Cadensdad14
Full Member
Karma: +8/-1
Offline
Posts: 134
|
|
« Reply #15 on: May 31, 2018, 07:45:37 PM »
|
|
|
So I took your advise and worked on some things. For starters I moved my flags to the location 0x383900. Basically, bit 0 is active during Launch Control, bit 1 is active during No Lift Shift. Not really necessary to seperate them, but I have some revisions Im hoping to do it lays the groundwork for. Since I ran into a wall with switching maps based on the status of those bits, i decided to disable knock recognition when those bits were active. Its bit 0xFD70.14 in my file. Its set at 0x72DAC and cleared at 0x72DB0.
0x872DAA jmpr cc_Z, loc_872DB0 0x872DAC bset b_kr.14 Replaced with call function 0x872DAE jmpr cc_UC, loc_872DB2 Replaced with call function
0x872DB0 bclr b_kr.14
0x872DB2 jnb b_kr.14, loc_872DC8
I inserted a call function to 0x8A4000 replacing the bset and jmpr at 0x872DAC because the call function is a 16 bit and the 2 existing functions were 8 bit. At 0x8A4000 i have the following:
0x8A4000 extp #0E0, #1 0x8A4004 movb rl4, B_alsflags 0x8A4008 cmpb rl4, #0 0x8A400C jmpr cc_NZ, loc_8A4014 0x8A400E bset b_kr.14 0x8A4010 jmps 87h, loc _872DB2
0x8A4014 jmps 87h, loc_872DB0
I think I got it. Call inserted to jump in blank space. Reference to the flag inserted. Completion of the function replaced with the call. Return to program from both sides of the function.
Now if someone could give me a pointer about pointers I would be eternally grateful.
|
|
|
Logged
|
|