If you appreciate the work done within the wiki, please consider supporting The Cutting Room Floor on Patreon. Thanks for all your support!
Booty (ZX Spectrum, Firebird Software)
Jump to navigation
Jump to search
Cleanup > Pages missing date references
Cleanup > Pages missing developer references
Cleanup > Pages missing publisher references
Games > Games by content > Games with uncompiled source code
Games > Games by developer > Games developed by MicroProse > Games developed by Telecomsoft > Games developed by Firebird Software
Games > Games by platform > ZX Spectrum games
Games > Games by publisher > Games published by MicroProse > Games published by Telecomsoft > Games published by Firebird Software
Games > Games by release date > Games released in 1984
Booty |
---|
Developer: Firebird Software This game has uncompiled source code. |
Source Code Fragment
A large chunk of the code was included in this game. While not as big as the code fragments seen in Exodus, it still takes up 7.8% of the game's space. The following addresses seen below are for the .tzx dump of the game.
72CE:
C HL CP C JR Z,POSS2 INC HL JR L6 POSS2: LD A,(HL) INC HL DEC A DEC A CP B JR NZ,L6 LD (IX+19),A ADD A,5 LD (IX+18),A INC HL OK12: LD A,(IX+17) CP 3 JR Z,OK9 DB 221,54,6,152 DB 221,54,17,3 OK9: LD A,(IX+6) SUB 6 LD (IX+6),A CP 128-6 JR NZ,OK8 DB 221,54,6,146 OK8: DB 221,54,5,1;MOVEUP DB 221,54,2,3;CENT RET FIRE: ;TEST FOR EODOOR LD IX,(23510);EODAT LD BC,(MANST) H2: LD A,(IX+0) CP 255 RET Z;END OF DOORS SUB C CP 2 JR NC,N8 LD A,(IX+1) DEC A CP B JR Z,DR N8: LD DE,4 ADD IX,DE JR H2 DR: LD A,(IX+3) CP 21 CALL Z,SEA;JOHN CH:;CHANGE SCREEN DB 50 DW 23507;SCNO LD A,0 DB 50 DW MANST+16;KEY CARRIED DB 50 DW EST;ZERO EXP DB 50 DW BMST+10;ZERO BMB DB 50 DW RS;ZERO RAT LD A,1 DB 50 DW MANST+17 LD A,152 DB 50 DW MANST+6 CALL SC CALL IF RET MIX: ;CALCS MOVE AND RETS WITH ;BC LOADED ;DE HAVE BPIX AND CPIX LD C,(IX+0) LD B,(IX+1) LD E,(IX+2) LD D,(IX+3) LD A,(IX+4) ADD A,E CP 128 JR NC,DC CP 4 JR C,NOC INC C INC C DC: DEC C AND 3 NOC: LD E,A ; LD A,(IX+5) ADD A,D CP 128 JR NC,DEB CP 4 JR C,NOB INC B INC B DEB: DEC B AND 3 NOB: LD D,A RET OPSQ: ;DI JOHN ; ;CREATE ACS LD DE,ACS LD HL,O128 LD BC,128 LDIR ; LD A,16 RST 16 LD A,(IX+9) RST 16 ; ; ; ;NOW DO DUMP LD HL,(23606) PUSH HL PUSH IY PUSH IX ;ADD HL (8*CHAR) LD E,(IX+6) LD D,0 SLA E RL D SLA E RL D SLA E RL D ADD HL,DE ;HL POINTS TO FIRST CHAR ; LD B,(IX+2) INC B LD C,0 LD (Q),BC ; LD E,(IX+7) LD D,(IX+8) ;CALC 8*D LD A,D INC A;JOHN SLA A SLA A SLA A LD C,A LD B,0 ;DI JOHN LD IY,ACS+8 ADD IY,BC ; ; ;CALC E*8 LD C,E SLA C SLA C SLA C LD B,0 LD (Q+10),BC ; LD IX,ACS+8 OL: PUSH HL PUSH DE IL: PUSH HL LD B,8 ROT: PUSH BC LD A,(HL) LD BC,(Q) IACS: SLA A RL C SLA A RL C DJNZ IACS LD (IY+0),A LD A,C OR (IX+0) LD (IX+0),A INC HL INC IX INC IY POP BC DJNZ ROT POP HL LD BC,(Q+10) ADD HL,BC DEC D JR NZ,IL POP DE LD BC,8 ADD IX,BC ADD IY,BC POP HL ADD HL,BC DEC E JR NZ,OL ; ;CALC CHAR SET LD HL,ACS-256 POP IX LD A,(IX+3) INC A SLA A LD E,A LD D,0 ADD HL,DE LD (23606),HL LD D,(IX+8) LD E,(IX+7) LD A,(IX+2) CP 3 JR Z,NIE INC E NIE: INC D LD A,D DB 50 DW Q+12 LD A,3 CP (IX+3) JR NZ,L3 DEC D L3: LD B,(IX+1) LD C,(IX+0) LD A,D LD A,32 POP IY ;EI JOHN ;PRINT ROUTINE LD A,32 P1: PUSH AF PUSH DE PUSH BC LD D,A LD A,C CP 34 JR NC,NFG NG3: PUSH DE CALL 0DD9H POP DE POP BC PUSH BC LD A,D IPL: CALL RST LD A,C CP 2 CALL Z,RNG DEC C LD A,(Q+12) ADD A,D LD D,A DEC E JR NZ,IPL POP BC POP DE POP AF DEC B INC A DEC D JR NZ,P1 NG2: POP HL LD (23606),HL ;EI JOHN RET RNG: DEC E PUSH AF INC E POP AF RET Z DEC E LD A,(Q+12) ADD A,D LD D,A JR RNG NFG: LD A,(Q+12) ADD A,D LD D,A DEC E JP Z,NG4 DEC C LD A,C CP 34 JR NC,NFG JP NG3 NG4: POP BC POP BC POP BC JP NG2 MOP: LD A,(Q+2) CP 0 RET Z LD HL,NSG+2736-256;OPGRA LD (23606),HL LD IX,(23518);OPST OPL: LD A,(IX+0) CP 255 RET Z LD A,16 RST 16 LD A,(IX+9) RST 16 ;MOVE OPPONENT LD A,(IX+6) ADD A,6 LD (IX+6),A CP 74 JR NZ,N1 DB 221,54,6,32 N1: CP 128 JR NZ,N2 DB 221,54,6,80 N2: CALL MIX LD A,C CP 34 JP Z,CTR CP 3 JP Z,CTL PUSH DE PUSH BC LD A,(IX+4) CP 255 JR NZ,NDB5 DEC C DEC C NDB5: CALL HITD;OOR POP BC POP DE ;A=255 IF NO HIT CP 255 JP NZ,CD ;CHECK FOR FLOOR PUSH BC PUSH DE DEC B DEC B DEC B LD A,(IX+4) CP 255 JR NZ,JFH DEC C DEC C JFH: CALL CA LD HL,41412;ARTSC LD DE,(ADR) ADD HL,DE POP DE POP BC LD A,(HL) CP 33 JP C,CD FOK: ;THIS DIR OK LD (IX+0),C LD (IX+1),B LD (IX+2),E LD (IX+3),D CALL DIX POPP: CALL OPSQ LD A,(IX+0) LD (IX+13),A LD A,(IX+1) LD (IX+14),A LD A,(IX+2) LD (IX+11),A LD A,(IX+3) LD (IX+15),A ;TEST FOR HIT ROG LD C,(IX+0) DEC C SLA C SLA C LD A,(IX+2) ADD A,C LD C,A LD A,(MANST+2) LD B,A LD A,(MANST) DEC A SLA A SLA A ADD A,B ADD A,7 SUB C CP 16 JR NC,MI LD
Cleanup > Pages missing date references
Cleanup > Pages missing developer references
Cleanup > Pages missing publisher references
Games > Games by content > Games with uncompiled source code
Games > Games by developer > Games developed by MicroProse > Games developed by Telecomsoft > Games developed by Firebird Software
Games > Games by platform > ZX Spectrum games
Games > Games by publisher > Games published by MicroProse > Games published by Telecomsoft > Games published by Firebird Software
Games > Games by release date > Games released in 1984