Routines |
Prev: D191 | Up: Map | Next: D2CF |
|
|||||||||||
Handles copying a "normal" bandit into the bandit state cache at Bandit_State_Reference.
|
|||||||||||
Prep_Bandit_Open | D192 | LD L,(IX+$02) | Handles copying 0007 bytes of data from the address contained at (depending on which door is currently being actioned);
|
||||||||
D195 | LD H,(IX+$03) | ||||||||||
D198 | LD DE,$D71E | ||||||||||
D19B | LD BC,$0007 | ||||||||||
D19E | PUSH HL | ||||||||||
D19F | PUSH DE | ||||||||||
D1A0 | PUSH BC | ||||||||||
D1A1 | LDIR | ||||||||||
D1A3 | CALL Bandit_Open_Routing | Call Bandit_Open_Routing to begin this characters actions. | |||||||||
D1A6 | POP BC | Restore the source, target and counter from above. | |||||||||
D1A7 | POP DE | ||||||||||
D1A8 | POP HL | ||||||||||
D1A9 | EX DE,HL | Swap the source and target. | |||||||||
D1AA | LD A,($D18F) | Check if D18F is zero. Write 00 to it. If it wasn't zero then return. | |||||||||
D1AD | AND A | ||||||||||
D1AE | LD A,$00 | ||||||||||
D1B0 | LD ($D18F),A | ||||||||||
D1B3 | RET NZ | ||||||||||
D1B4 | LDIR | Else copy the (swapped) source back to the new target and return. | |||||||||
D1B6 | RET | ||||||||||
And copying a successful bandit encounter to close the door.
|
|||||||||||
Prep_Bandit_Close | D1B7 | LD L,(IX+$02) | Handles copying 0007 bytes of data from the address contained at (depending on which door is currently being actioned);
|
||||||||
D1BA | LD H,(IX+$03) | ||||||||||
D1BD | LD DE,$D71E | ||||||||||
D1C0 | LD BC,$0007 | ||||||||||
D1C3 | PUSH HL | ||||||||||
D1C4 | PUSH DE | ||||||||||
D1C5 | PUSH BC | ||||||||||
D1C6 | LDIR | ||||||||||
D1C8 | CALL Bandit_Close_Routing | Call Bandit_Close_Routing to begin this characters actions. | |||||||||
D1CB | POP BC | Restore the source, target and counter from above. | |||||||||
D1CC | POP DE | ||||||||||
D1CD | POP HL | ||||||||||
D1CE | EX DE,HL | Swap the source and target. | |||||||||
D1CF | LD A,($D18F) | Check if D18F is zero. Write $00 to it. If it wasn't zero then return. | |||||||||
D1D2 | AND A | ||||||||||
D1D3 | LD A,$00 | ||||||||||
D1D5 | LD ($D18F),A | ||||||||||
D1D8 | RET NZ | ||||||||||
D1D9 | LDIR | Else copy the (swapped) source back to the new target and return. | |||||||||
D1DB | RET | ||||||||||
Handles copying Bowie state data into the state cache at Bowie_Good_Bad.
|
|||||||||||
Prep_Bowie | D1DC | LD L,(IX+$02) | Handles copying $0009 bytes of data from the address contained at (depending on which door is currently being actioned);
|
||||||||
D1DF | LD H,(IX+$03) | ||||||||||
D1E2 | LD DE,$D7C5 | ||||||||||
D1E5 | LD BC,$0009 | ||||||||||
D1E8 | PUSH HL | ||||||||||
D1E9 | PUSH DE | ||||||||||
D1EA | PUSH BC | ||||||||||
D1EB | LDIR | ||||||||||
D1ED | CALL Bowie_Routing | Call Bowie_Routing to begin this characters actions. | |||||||||
D1F0 | POP BC | Restore the source, target and counter from above. | |||||||||
D1F1 | POP DE | ||||||||||
D1F2 | POP HL | ||||||||||
D1F3 | EX DE,HL | Swap the source and target. | |||||||||
D1F4 | LD A,($D18F) | Check if D18F is zero. Write $00 to it. If it wasn't zero then return. | |||||||||
D1F7 | AND A | ||||||||||
D1F8 | LD A,$00 | ||||||||||
D1FA | LD ($D18F),A | ||||||||||
D1FD | RET NZ | ||||||||||
D1FE | LDIR | Else copy the (swapped) source back to the new target and return. | |||||||||
D200 | RET | ||||||||||
Handles copying customer state data into the state cache at Customer_Frame_01.
|
|||||||||||
Prep_Customer | D201 | LD L,(IX+$02) | Handles copying $000F bytes of data from the address contained at (depending on which door is currently being actioned);
|
||||||||
D204 | LD H,(IX+$03) | ||||||||||
D207 | LD DE,$D48F | ||||||||||
D20A | LD BC,$000F | ||||||||||
D20D | PUSH HL | ||||||||||
D20E | PUSH DE | ||||||||||
D20F | PUSH BC | ||||||||||
D210 | LDIR | ||||||||||
D212 | CALL Customer_Routing | Call Customer_Routing to begin this characters actions. | |||||||||
D215 | POP BC | Restore the source, target and counter from above. | |||||||||
D216 | POP DE | ||||||||||
D217 | POP HL | ||||||||||
D218 | EX DE,HL | Swap the source and target. | |||||||||
D219 | LD A,($D18F) | Check if D18F is zero. Write $00 to it. If it wasn't zero then return. | |||||||||
D21C | AND A | ||||||||||
D21D | LD A,$00 | ||||||||||
D21F | LD ($D18F),A | ||||||||||
D222 | RET NZ | ||||||||||
D223 | LDIR | Else copy the (swapped) source back to the new target and return. | |||||||||
D225 | RET | ||||||||||
Handles copying customer "is shot" state data into the state cache at Customer_Frame_01.
|
|||||||||||
Prep_Customer_Shot | D226 | LD L,(IX+$02) | Handles copying $000F bytes of data from the address contained at (depending on which door is currently being actioned);
|
||||||||
D229 | LD H,(IX+$03) | ||||||||||
D22C | LD DE,$D48F | ||||||||||
D22F | LD BC,$000F | ||||||||||
D232 | PUSH HL | ||||||||||
D233 | PUSH DE | ||||||||||
D234 | PUSH BC | ||||||||||
D235 | LDIR | ||||||||||
D237 | CALL Customer_Shot | Call Customer_Shot. | |||||||||
D23A | POP BC | Restore the source, target and counter from above. | |||||||||
D23B | POP DE | ||||||||||
D23C | POP HL | ||||||||||
D23D | EX DE,HL | Swap the source and target. | |||||||||
D23E | LDIR | Copy the (swapped) source back to the new target and return. | |||||||||
D240 | RET | ||||||||||
Handles copying Julius state data into the state cache at Julius_Good_Bad.
|
|||||||||||
Prep_Julius_Open | D241 | LD L,(IX+$02) | Handles copying $000A bytes of data from the address contained at (depending on which door is currently being actioned);
|
||||||||
D244 | LD H,(IX+$03) | ||||||||||
D247 | LD DE,$D8E5 | ||||||||||
D24A | LD BC,$000A | ||||||||||
D24D | PUSH HL | ||||||||||
D24E | PUSH DE | ||||||||||
D24F | PUSH BC | ||||||||||
D250 | LDIR | ||||||||||
D252 | CALL Julius_Open_Routing | Call Julius_Open_Routing. | |||||||||
D255 | POP BC | Restore the source, target and counter from above. | |||||||||
D256 | POP HL | ||||||||||
D257 | POP DE | ||||||||||
D258 | LD A,($D18F) | Check if D18F is zero. Write $00 to it. If it wasn't zero then return. | |||||||||
D25B | AND A | ||||||||||
D25C | LD A,$00 | ||||||||||
D25E | LD ($D18F),A | ||||||||||
D261 | RET NZ | ||||||||||
D262 | LDIR | Copy the source to the target again and return. | |||||||||
D264 | RET | ||||||||||
And copying a successful Julius encounter to close the door.
|
|||||||||||
Prep_Julius_Close | D265 | LD L,(IX+$02) | Handles copying $000A bytes of data from the address contained at (depending on which door is currently being actioned);
|
||||||||
D268 | LD H,(IX+$03) | ||||||||||
D26B | LD DE,$D8E5 | ||||||||||
D26E | LD BC,$000A | ||||||||||
D271 | PUSH HL | ||||||||||
D272 | PUSH DE | ||||||||||
D273 | PUSH BC | ||||||||||
D274 | LDIR | ||||||||||
D276 | CALL Julius_Close_Routing | Call Julius_Close_Routing. | |||||||||
D279 | POP BC | Restore the source, target and counter from above. | |||||||||
D27A | POP HL | ||||||||||
D27B | POP DE | ||||||||||
D27C | LD A,($D18F) | Check if D18F is zero. Write $00 to it. If it wasn't zero then return. | |||||||||
D27F | AND A | ||||||||||
D280 | LD A,$00 | ||||||||||
D282 | LD ($D18F),A | ||||||||||
D285 | RET NZ | ||||||||||
D286 | LDIR | Copy the source to the target again and return. | |||||||||
D288 | RET | ||||||||||
Handles copying a "drawing bandit" into the bandit state cache at Bandit_Draw.
|
|||||||||||
Prep_Bandit_Draw_Open | D289 | LD L,(IX+$02) | Handles copying $000B bytes of data from the address contained at (depending on which door is currently being actioned);
|
||||||||
D28C | LD H,(IX+$03) | ||||||||||
D28F | LD DE,$DA0C | ||||||||||
D292 | LD BC,$000B | ||||||||||
D295 | PUSH HL | ||||||||||
D296 | PUSH DE | ||||||||||
D297 | PUSH BC | ||||||||||
D298 | LDIR | ||||||||||
D29A | CALL Bandit_Draw_Open_Routing | Call Bandit_Draw_Open_Routing. | |||||||||
D29D | POP BC | Restore the source, target and counter from above. | |||||||||
D29E | POP HL | ||||||||||
D29F | POP DE | ||||||||||
D2A0 | LD A,($D18F) | Check if D18F is zero. Write $00 to it. If it wasn't zero then return. | |||||||||
D2A3 | AND A | ||||||||||
D2A4 | LD A,$00 | ||||||||||
D2A6 | LD ($D18F),A | ||||||||||
D2A9 | RET NZ | ||||||||||
D2AA | LDIR | Copy the source to the target again and return. | |||||||||
D2AC | RET | ||||||||||
And copying a successful "drawing bandit" encounter to close the door.
|
|||||||||||
Prep_Bandit_Draw_Close | D2AD | LD L,(IX+$02) | Handles copying $000B bytes of data from the address contained at (depending on which door is currently being actioned);
|
||||||||
D2B0 | LD H,(IX+$03) | ||||||||||
D2B3 | LD DE,$DA0C | ||||||||||
D2B6 | LD BC,$000B | ||||||||||
D2B9 | PUSH HL | ||||||||||
D2BA | PUSH DE | ||||||||||
D2BB | PUSH BC | ||||||||||
D2BC | LDIR | ||||||||||
D2BE | CALL Bandit_Draw_Close_Routing | Call Bandit_Draw_Close_Routing. | |||||||||
D2C1 | POP BC | Restore the source, target and counter from above. | |||||||||
D2C2 | POP HL | ||||||||||
D2C3 | POP DE | ||||||||||
D2C4 | LD A,($D18F) | Check if D18F is zero. If it wasn't zero then return. | |||||||||
D2C7 | AND A | ||||||||||
D2C8 | LD ($D18F),A | ||||||||||
D2CB | RET NZ | ||||||||||
D2CC | LDIR | Copy the source to the target again and return. | |||||||||
D2CE | RET |
Prev: D191 | Up: Map | Next: D2CF |