Routines |
Prev: 65024 | Up: Map | Next: 65316 |
|
||||
Checksum | 65271 | LD HL,16384 | HL=16384. | |
65274 | LD BC,48932 | BC=48932. | ||
65277 | LD A,0 | A=0. | ||
Checksum_Loop | 65279 | ADD A,(HL) | E=A+*HL. | |
65280 | LD E,A | |||
65281 | INC HL | Increment HL by one. | ||
65282 | DEC BC | Decrease BC by one. | ||
65283 | LD A,B | Is BC zero?.. | ||
65284 | OR C | |||
65285 | LD A,E | A=E. | ||
65286 | JR NZ,Checksum_Loop | If BC is not zero, jump to Checksum_Loop. | ||
65288 | CP (HL) | If *HL is not zero, jump to 0 (return to ZX Spectrum BASIC). | ||
65289 | JP NZ,0 | |||
65292 | LD DE,23424 | DE=23424. | ||
65295 | LD HL,21502 | HL=21502. | ||
Decryption_Loop | 65298 | LD A,(DE) | A=*DE. | |
65299 | XOR (HL) | Run an XOR on *HL. | ||
65300 | RES 4,H | Reset bit 4 of H. | ||
65302 | XOR (HL) | Run another XOR on *HL. | ||
65303 | SET 4,H | Set bit 4 of H. | ||
65305 | LD (DE),A | Write A to *DE. | ||
65306 | DEC HL | Decrease HL by one. | ||
65307 | INC DE | Increment DE by one. | ||
65308 | LD A,E | If E is not 154 jump to Decryption_Loop. | ||
65309 | CP 154 | |||
65311 | JR NZ,Decryption_Loop | |||
65313 | JP 23444 | Jump to 23444. |
Prev: 65024 | Up: Map | Next: 65316 |