	struct
obShp 		ds 1
obPhi 		ds 1
obPxl 		ds 1
obPxh 		ds 1
obDi 		ds 1
obBC 		ds 1
obPzl 		ds 1
obPzh 		ds 1
obDis 		ds 1
obMov 		ds 1
obHFl 		ds 1
obWSp 		ds 1
		ds 4
obLen 	send

MaxnObj EQU 125


	struct
ptPxl 		ds 1
ptPxh 		ds 1
ptPyl 		ds 1
ptPyh 		ds 1
ptPzl 		ds 1
ptPzh		ds 1
	send

                ORG $5B00                       ; 0000 
                LD HL,$9B20                     ; 5B00  
                LD DE,$D000                     ; 5B03  
                LD BC,$4000                     ; 5B06  
                LDDR                            ; 5B09  
                LD SP,TX                        ; 5B0B  
                JP LA100                        ; 5B0E  

		ORG #6000
TX 		DEFW 0
TY 		DEFW 0
TZ 		DEFW 0
MatSin 		DEFW 0
MatCos 		DEFW 0
MatPx 		DEFW 0
		DEFW 0 ;Spare
MatPz 		DEFW 0
SinPP 		DEFW 0
CosPP 		DEFW 0
Dispx 		DEFW 0
Dispz 		DEFW 0
X 		DEFW 0
Y 		DEFW 0
CX 		DEFW 0
CY 		DEFW 0
ER 		DEFW 0
Border 		DEFW 0
TempP 		DEFS 128
Seed 		DEFS 4
SEn 		DEFS 4

		ORG #60C0
kRot 		EQU $
kL 		DEFB 0
kR 		DEFB 0
kMov 		EQU $
kF 		DEFB 0
kB 		DEFB 0
kZap 		DEFB 0
kQuit 		DEFB 0
VX 		DEFW 0
VZ 		DEFW 0
VN 		DEFB 0
VPhi 		DEFB 0
Vtor 		DEFW 0
VPx 		DEFW 0
VPz 		DEFW 0
VFlags 		DEFB 0
VTx 		DEFW 0
VTz 		DEFW 0
BpDist 		DEFW 0
DisTab 		DEFW 0
nObj 		DEFB 0
BonkFlg		DEFB 0
VHFl 		DEFB 0

		org $6110

FCount 		ds 2
KFl 		ds 1
FFl 		ds 1
Aim 		ds 1


ORG 		#6180
IntFlag 	DEFB 0
IntPnt 		DEFW 0
LvF 		DEFB 0
IntLog 		DEFB 0
LC 		DEFB 0
tREn 		DEFB 0
Curs 		DEFW 0
PlLiv 		DEFB 0
VEn 		DEFB 0
VEnk 		DEFB 0
REn 		DEFB 0
REnk 		DEFB 0
BScPt 		DEFW 0
LvT 		DEFS 50

THF 		EQU #6600

		ORG #6700
zDispObj 	JP DispObj
zDoObj 		JP DoObj
zSine 		JP Sine
zCosine 	JP Cosine
zFMul 		JP FMul
ZFDiv 		JP FDiv
zNegHL 		JP NegHL
zCLine 		JP CLine
zLine 		JP Line
zPoint 		JP Point
zCircle 	JP Circle
zDrip 		JP Drip
zBonk 		JP Bonk
zBlip 		JP Blip
zSnd 		JP Snd
zRand1 		JP Rand1
zRand 		JP Rand
zInitRand 	JP InitRand

		org $6750
vInA            JP InA
vInB            JP InB
vInG            JP InG
vGame           JP Game
                NOP
vPutMtns        JP PutMtns

		ORG #6760
zMPlyr 		JP MPlyr
zKeys 		JP Keys
zSClr 		JP SClr
zSCopy 		JP SCopy
zDClr 		JP DClr
zSetAttr 	JP SetAttr
zVecMove 	JP VecMove
zVBMove 	JP VBMove
zClrMap 	JP ClrMap
zBp 		JP Bp
zObSearch 	JP ObSearch
zMapPt 		JP MapPt
zFOS 		JP FOS
zMakeE 		JP MakeE
zTranE 		JP TranE
zMakeObj 	JP MakeObj
zMakeSpace 	JP MakeSpace
zMPR 		JP MPR
zMPE 		JP MPE
zMPZ 		JP MPZ
zSqr 		JP Sqr
zSights 	JP Sites
zSightBits 	JP SiteBits
zDirFind 	JP DF
zGetHfl 	JP GHFl
zClrHFl 	JP CHFl
zKempChk 	JP KCk
zFullChk 	JP FCk

		org $67C0

                JP $0008                        ; 67C0  
vSL             JP SL                           ; 67C3  
vInPl           JP InPl                         ; 67C6  
vINTk           JP INTk                         ; 67C9  
vMvObj          JP MvObj                        ; 67CC  
MovBull         JP LB9B7                        ; 67CF  
vRTk            JP RTk                          ; 67D2  
vKemp           JP Kemp                         ; 67D5  
vFull           JP Full                         ; 67D8  
vGrumSet        JP GrumSet                      ; 67DB  
vGrumble        JP Grumble                      ; 67DE  
vKillFull       JP KillFull                     ; 67E1  
vDoBonks        JP DoBonks                      ; 67E4  
                JP LBDB2                        ; 67E7  
                JP LBDBC                        ; 67EA  

ShpVec 		EQU #6800
BumTabL 	EQU #6880
BumTabS 	EQU #68C0
BumTab 		EQU #6900
Bits 		EQU #6B64

                ORG $6EF8                       ; 0000 

CharsDec        DEFB $FE,$86,$8A,$92,$A2,$C2,$FE,$00
                DEFB $30,$10,$10,$10,$10,$10,$7C,$00
                DEFB $FE,$02,$02,$FE,$80,$80,$FE,$00
                DEFB $FE,$02,$02,$3E,$02,$02,$FE,$00
                DEFB $82,$82,$82,$FE,$02,$02,$02,$00
                DEFB $FE,$80,$80,$FE,$02,$02,$FE,$00
                DEFB $80,$80,$80,$FE,$82,$82,$FE,$00
                DEFB $FE,$02,$02,$02,$02,$02,$02,$00
                DEFB $FE,$82,$82,$7C,$82,$82,$FE,$00
                DEFB $FE,$82,$82,$FE,$02,$02,$02,$00

AtnT EQU #6C92

		ORG #7000

Map 		DEFS 2048
PlShp 		DEFB 0
PlPhi 		DEFB 0
PlPx 		DEFW #0B00
PlPy 		DEFW 0
PlPz 		DEFW #3E00
ObList 		EQU PlShp+obLen

; 8000
                ORG $8000                       ; 0000 
L8000           DI                              ; 8000  
                CALL vInA                       ; 8001  
                CALL ShowFrontText              ; 8004  
                CALL vInB                       ; 8007  
                CALL WaitForSpace               ; 800A  
MainLp          CALL ShowControlText            ; 800D  
                CALL vInG                       ; 8010  
                CALL vGame                      ; 8013  
                DI                              ; 8016  
                CALL L8313                      ; 8017  
                JR MainLp                       ; 801A  

                DEFB "(c) 1983 Crystal Computing",$0D,"So Mits Off!!"; 801C 

Print           PUSH AF                         ; 8044  
                PUSH BC                         ; 8045  
                PUSH DE                         ; 8046  
                PUSH HL                         ; 8047  
                LD HL,(PrintCursor)             ; 8048  
                CP $0D                          ; 804B  
                JR Z PrintCret                  ; 804D  

                JR C PrintCtrl                  ; 804F  

                CP $20                          ; 8051  
                JR C PrintX                     ; 8053  

                LD C,L                          ; 8055  
                INC L                           ; 8056  
                LD (PrintCursor),HL             ; 8057  
                LD E,H                          ; 805A  
                LD D,$00                        ; 805B  
                LD B,D                          ; 805D  
                SLA E                           ; 805E  
                SLA E                           ; 8060  
                SLA E                           ; 8062  
                SLA E                           ; 8064  
                RL D                            ; 8066  
                LD HL,YTable                    ; 8068  
                ADD HL,DE                       ; 806B  
                LD E,(HL)                       ; 806C  
                INC HL                          ; 806D  
                LD D,(HL)                       ; 806E  
                EX DE,HL                        ; 806F  
                ADD HL,BC                       ; 8070  
                EX DE,HL                        ; 8071  
                LD HL,$3C00                     ; 8072  
                LD B,$00                        ; 8075  
                ADD A,A                         ; 8077  
                RL B                            ; 8078  
                ADD A,A                         ; 807A  
                RL B                            ; 807B  
                ADD A,A                         ; 807D  
                RL B                            ; 807E  
                LD C,A                          ; 8080  
                ADD HL,BC                       ; 8081  
                LD B,$08                        ; 8082  
PrintChLp       LD A,(HL)                       ; 8084  
                LD (DE),A                       ; 8085  
                INC HL                          ; 8086  
                INC D                           ; 8087  
                DJNZ PrintChLp                  ; 8088  

PrintX          POP HL                          ; 808A  
                POP DE                          ; 808B  
                POP BC                          ; 808C  
                POP AF                          ; 808D  
                RET                             ; 808E  

PrintCret       LD L,$00                        ; 808F  
                INC H                           ; 8091  
                LD (PrintCursor),HL             ; 8092  
                JR PrintX                       ; 8095  

PrintCtrl       ADD A,L                         ; 8097  
                LD L,A                          ; 8098  
                LD (PrintCursor),HL             ; 8099  
                JR PrintX                       ; 809C  

PrintStr        LD A,(HL)                       ; 809E  
                OR A                            ; 809F  
                RET Z                           ; 80A0  

                CALL Print                      ; 80A1  
                INC HL                          ; 80A4  
                JR PrintStr                     ; 80A5  

WaitForSpace    LD A,$7F                        ; 80A7  
                IN A,($FE)                      ; 80A9  
                RRA                             ; 80AB  
                JR NC WaitForSpace              ; 80AC  

WaitForSp1      LD A,$7F                        ; 80AE  
                IN A,($FE)                      ; 80B0  
                RRA                             ; 80B2  
                JR C WaitForSp1                 ; 80B3  

                RET                             ; 80B5  

ShowFrontText   CALL zDClr                      ; 80B6  
                LD HL,$0000                     ; 80B9  
                LD (PrintCursor),HL             ; 80BC  
                LD HL,szFrontText               ; 80BF  
                CALL PrintStr                   ; 80C2  
                RET                             ; 80C5  

szFrontText     DEFB $08,"ROMMEL'S REVENGE",$0D,$0D,$0D,$01; 80C6 
                DEFB "Written by",$0D,$0D,$0A,"M. S. Horsley",$0D,$0D,$03; 80DB 
                DEFB "and Design Design Software",$0D,$0D,$0D,$01; 80F8 
                DEFB "Illustration by",$0D,$0D,$03,"D. de Leuw of Leeuw Graphics",$0D,$0D; 8116 
                DEFB $0D,$0D,$0D,$0D,$0D,$0D,$0D,$0D,$0D,$04; 8146 
                DEFB "Press space to continue",$00,"d",$0D,$0D,$01; 8150 
                DEFB "Game Design by",$0D,$0D,$05,"Design Design Software",$0D,$0D,$01; 816C 
                DEFB "Illustration by",$0D,$0D,$03,"D. de Leuw of Leeuw Graphics",$0D,$0D; 8196 
                DEFB $07,"Press space to continue",$00; 81C6 

ShowControlText LD HL,$0000                     ; 81DF  
                LD (PrintCursor),HL             ; 81E2  
                CALL vDClr                      ; 81E5  
                LD HL,szControls                ; 81E8  
                CALL PrintStr                   ; 81EB  
                JP WaitForSpace                 ; 81EE  

szControls      DEFB $07,"ROMMEL'S REVENGE",$0D,$0D,$0D,$01; 81F1 
                DEFB "Tank Controls",$0D,$0D,$05,"N - Move Forward",$0D,$05; 8206 
                DEFB "M - Move Backward",$0D,$05,"X - Turn Left",$0D,$05; 8228 
                DEFB "Z - Turn Right",$0D,$05,"Space - Fire",$0D,$0D,$01; 824A 
                DEFB "System Controls",$0D,$0D,$05,"1 - Sound On",$0D,$05; 8269 
                DEFB "2 - Sound Off",$0D,$05,"3 - Quit Present Game",$0D,$05; 8289 
                DEFB "R - Radar On/Off",$0D,$05,"V - Volcano On/Off",$0D,$0D,$0D,$01; 82AF 
                DEFB "High Score : "            ; 82D7 
L82E4           DEFB "Mennex     "              ; 82E4 
L82EF           DEFB "4200        ",$0D,$0D,$0D,$07,"Press space to play",$00; 82EF 

L8313           CALL L8411                      ; 8313  
                LD DE,(FCount)                  ; 8316  
                LD HL,(L85F6)                   ; 831A  
                OR A                            ; 831D  
                SBC HL,DE                       ; 831E  
                JR NC L835B                     ; 8320  

                LD (L85F6),DE                   ; 8322  
                PUSH HL                         ; 8326  
                LD HL,ScoreBuff                 ; 8327  
                LD DE,L82EF                     ; 832A  
                LD BC,$0007                     ; 832D  
                LDIR                            ; 8330  
                POP DE                          ; 8332  
                LD HL,$0000                     ; 8333  
                OR A                            ; 8336  
                SBC HL,DE                       ; 8337  
                CALL OutputDecHL                ; 8339  
                LD HL,ScoreBuff                 ; 833C  
                LD DE,PlayerMargin              ; 833F  
                LD BC,$0007                     ; 8342  
                LDIR                            ; 8345  
                LD HL,L82E4                     ; 8347  
                LD DE,PlayerName                ; 834A  
                LD BC,$000A                     ; 834D  
                LDIR                            ; 8350  
                LD HL,szNewHighScore            ; 8352  
                CALL PrintStr                   ; 8355  
                CALL L84CD                      ; 8358  
L835B           LD HL,$1706                     ; 835B  
                LD (PrintCursor),HL             ; 835E  
                LD HL,szPressSpace              ; 8361  
                CALL PrintStr                   ; 8364  
                JP WaitForSpace                 ; 8367  

szPressSpace    DEFB "Press space to continue",$00; 836A 

OutputDecHL     LD IX,ScoreBuff                 ; 8382  
                PUSH HL                         ; 8386  
                LD HL,ScoreBuff                 ; 8387  
                LD DE,ScoreBuff1                ; 838A  
                LD BC,$0006                     ; 838D  
                LD (HL),$20                     ; 8390  
                LDIR                            ; 8392  
                POP HL                          ; 8394  
                LD C,$01                        ; 8395  
                LD DE,$2710                     ; 8397  
                CALL OutputDec1                 ; 839A  
                LD DE,$03E8                     ; 839D  
                CALL OutputDec1                 ; 83A0  
                LD DE,$0064                     ; 83A3  
                CALL OutputDec1                 ; 83A6  
                LD DE,$000A                     ; 83A9  
                CALL OutputDec1                 ; 83AC  
                LD A,L                          ; 83AF  
                ADD A,$30                       ; 83B0  
                LD (IX),A                       ; 83B2  
                LD (IX+1),$30                   ; 83B5  
                LD (IX+2),$30                   ; 83B9  
                RET                             ; 83BD  

                DEFB "Hello Simon, having fun?" ; 83BE 

	; Yes, I suppose I am... That comment waited 24 years to be reach its target...

OutputDec1      XOR A                           ; 83D6  
OutputDec1_Lp   INC A                           ; 83D7  
                SBC HL,DE                       ; 83D8  
                JR NC OutputDec1_Lp             ; 83DA  

                ADD HL,DE                       ; 83DC  
                CP C                            ; 83DD  
                RET Z                           ; 83DE  

                DEC C                           ; 83DF  
                ADD A,$2F                       ; 83E0  
                LD (IX),A                       ; 83E2  
                INC IX                          ; 83E5  
                RET                             ; 83E7  

                DEFB "Nazir's vindaloo curry sauces are great",$0D,$00; 83E8 

L8411           CALL vDClr                      ; 8411  
                LD HL,$0000                     ; 8414  
                LD (PrintCursor),HL             ; 8417  
                LD HL,(FCount)                  ; 841A  
                CALL OutputDecHL                ; 841D  
                LD HL,ScoreBuff                 ; 8420  
                LD DE,PlayerScore               ; 8423  
                LD BC,$0007                     ; 8426  
                LDIR                            ; 8429  
                LD HL,szScoreText               ; 842B  
                CALL PrintStr                   ; 842E  
                RET                             ; 8431  

szScoreText     DEFB $07,"ROMMEL'S REVENGE",$0D,$0D,$0D,$0D,$0D,$06; 8432 
                DEFB "You have scored "         ; 8449 
PlayerScore     DEFB "4200   ",$0D,$00          ; 8459 
szNewHighScore  DEFB $0D,$03,"This is a new high score",$0D,$0D,$03; 8462 
                DEFB "You have beaten "         ; 847F 
PlayerName      DEFB "Snoopy    ",$0D,$0D,$03,"by "; 848F 
PlayerMargin    DEFB "6553500",$0D,$0D,$03,"Please enter your name",$0D,$0D,$03; 849F 
                DEFB "----------",$00           ; 84C2 

L84CD           LD HL,(PrintCursor)             ; 84CD  
                LD A,L                          ; 84D0  
                SUB $0A                         ; 84D1  
                LD L,A                          ; 84D3  
                LD (PrintCursor),HL             ; 84D4  
                LD HL,L8600-1                   ; 84D7  
                LD DE,L8600                     ; 84DA  
                LD BC,$0009                     ; 84DD  
                LD (HL),$20                     ; 84E0  
                LDIR                            ; 84E2  
                XOR A                           ; 84E4  
                LD (L8609),A                    ; 84E5  
                LD IX,L85FF                     ; 84E8  
L84EC           CALL L8559                      ; 84EC  
                CP $0D                          ; 84EF  
                JR Z L8532                      ; 84F1  

                OR A                            ; 84F3  
                JR Z L84EC                      ; 84F4  

                CP $08                          ; 84F6  
                JR Z L8511                      ; 84F8  

                LD C,A                          ; 84FA  
                LD A,(L8609)                    ; 84FB  
                CP $0A                          ; 84FE  
                JR Z L84EC                      ; 8500  

                INC A                           ; 8502  
                LD (L8609),A                    ; 8503  
                LD (IX),C                       ; 8506  
                INC IX                          ; 8509  
                LD A,C                          ; 850B  
                CALL Print                      ; 850C  
                JR L84EC                        ; 850F  

L8511           LD A,(L8609)                    ; 8511  
                OR A                            ; 8514  
                JR Z L84EC                      ; 8515  

                DEC A                           ; 8517  
                LD (L8609),A                    ; 8518  
                DEC IX                          ; 851B  
                LD (IX),$20                     ; 851D  
                LD HL,(PrintCursor)             ; 8521  
                DEC HL                          ; 8524  
                LD (PrintCursor),HL             ; 8525  
                LD A,$2D                        ; 8528  
                CALL Print                      ; 852A  
                LD (PrintCursor),HL             ; 852D  
                JR L84EC                        ; 8530  

L8532           LD HL,L85FF                     ; 8532  
                LD A,$20                        ; 8535  
                LD B,$0A                        ; 8537  
L8539           CP (HL)                         ; 8539  
                JR NZ L8543                     ; 853A  

                DJNZ L8539                      ; 853C  

                LD HL,Someone                   ; 853E  
                JR L8546                        ; 8541  

L8543           LD HL,L85FF                     ; 8543  
L8546           LD DE,L82E4                     ; 8546  
                LD BC,$000A                     ; 8549  
                LDIR                            ; 854C  
                RET                             ; 854E  

Someone         DEFB "Someone   "               ; 854F 

L8559           LD HL,L860A                     ; 8559  
                LD D,$00                        ; 855C  
                LD BC,LFEFE                     ; 855E  
L8561           IN A,(C)                        ; 8561  
                OR $E0                          ; 8563  
                LD E,A                          ; 8565  
                XOR (HL)                        ; 8566  
                JR NZ L8571                     ; 8567  

                INC HL                          ; 8569  
                INC D                           ; 856A  
                RLC B                           ; 856B  
                JR C L8561                      ; 856D  

                XOR A                           ; 856F  
                RET                             ; 8570  

L8571           LD (HL),E                       ; 8571  
                CPL                             ; 8572  
                OR E                            ; 8573  
                CPL                             ; 8574  
                OR A                            ; 8575  
                RET Z                           ; 8576  

                LD E,$00                        ; 8577  
L8579           RRA                             ; 8579  
                JR C L857F                      ; 857A  

                INC E                           ; 857C  
                JR L8579                        ; 857D  

L857F           LD HL,KeyMap                    ; 857F  
                LD BC,$0028                     ; 8582  
                LD A,$FE                        ; 8585  
                IN A,($FE)                      ; 8587  
                BIT 0,A                         ; 8589  
                JR NZ L8590                     ; 858B  

                ADD HL,BC                       ; 858D  
                JR L8599                        ; 858E  

L8590           LD A,$7F                        ; 8590  
                IN A,($FE)                      ; 8592  
                BIT 1,A                         ; 8594  
                JR NZ L8599                     ; 8596  

                ADD HL,BC                       ; 8598  
L8599           LD A,D                          ; 8599  
                ADD A,A                         ; 859A  
                ADD A,A                         ; 859B  
                ADD A,D                         ; 859C  
                LD D,$00                        ; 859D  
                ADD HL,DE                       ; 859F  
                LD E,A                          ; 85A0  
                ADD HL,DE                       ; 85A1  
                LD A,(HL)                       ; 85A2  
                RET                             ; 85A3  

KeyMap          DEFB $00,"ZXCVASDFGQWERT1234509876POIUY",$0D; 85A4 
                DEFB "LKJH ",$00,"MNB",$00,"zxcvasdfgqwert12345",$08; 85C3 
                DEFB "9876poiuy",$0D,"lkjh ",$00,"mnb"; 85E1 
PrintCursor     DEFW $171B                      ; 85F4 
L85F6           DEFW $002A                      ; 85F6 
ScoreBuff       DEFB $00                        ; 85F8 .
ScoreBuff1      DEFB $00,$00,$00,$00,$00,$00    ; 85F9 ......
L85FF           DEFB $00                        ; 85FF .

L8600		ds 9 				;
L8609		ds 1				;
L860A		equ *				;?

; I think this stops here...

; Martins Source 5

                ORG $A000                       ; 0000 

PutMtns         LD A,(PlPhi)                    ; A000  
                LD C,A                          ; A003  
                LD HL,Mtns                      ; A004  
                LD DE,MtnBuff                   ; A007  
MtnC1           LD L,C                          ; A00A  
                LD B,$20                        ; A00B  
MtnC2           LD A,(HL)                       ; A00D  
                LD (DE),A                       ; A00E  
                INC DE                          ; A00F  
                INC L                           ; A010  
                DJNZ MtnC2                      ; A011  

                INC H                           ; A013  
                LD A,D                          ; A014  
                CP $CC                          ; A015  
                JR NZ MtnC1                     ; A017  

                RET                             ; A019  

; This looks like code... Gawd knows?

; A100
                ORG $A100                       ; 0000 

LA100           LD HL,Scrn2                     ; A100  
                LD DE,$8000                     ; A103  
                LD BC,$0600                     ; A106  
                LDIR                            ; A109  
LA10B           LD HL,$C700                     ; A10B  
                LD DE,vDispObj                  ; A10E  
                LD BC,$0900                     ; A111  
                LDIR                            ; A114  
                JP $8000                        ; A116  

(*

                LD SP,$0042                     ; A119  
LA11A           EQU *-2                         ;
                LD (HL),B                       ; A11C  
                XOR $53                         ; A11D  
                LD H,E                          ; A11F  
                LD L,A                          ; A120  
                LD (HL),D                       ; A121  
                JR NZ LA0C4                     ; A122  

                INC HL                          ; A124  
                LD (HL),$31                     ; A125  
                LD SP,$0030                     ; A127  
LA129           EQU *-1                         ;
                LD (HL),C                       ; A12A  
                XOR $43                         ; A12B  
                LD L,B                          ; A12D  
                LD H,C                          ; A12E  
                LD (HL),D                       ; A12F  
                LD (HL),E                       ; A130  
                JR NZ LA0D3                     ; A131  

                INC HL                          ; A133  
                LD (HL),$45                     ; A134  
                LD B,(HL)                       ; A136  
LA137           JR C LA139                      ; A137  

LA139           LD A,D                          ; A139  
                XOR $42                         ; A13A  
                LD L,C                          ; A13C  
                LD (HL),H                       ; A13D  
                LD (HL),E                       ; A13E  
                JR NZ LA0E1                     ; A13F  

                INC HL                          ; A141  
                LD (HL),$42                     ; A142  
                LD (HL),$34                     ; A144  
LA146           NOP                             ; A146  
                LD A,H                          ; A147  
                XOR $44                         ; A148  
                LD D,B                          ; A14A  
                LD C,H                          ; A14B  
                LD D,H                          ; A14C  
                JR NZ LA0EF                     ; A14D  

                INC HL                          ; A14F  
                LD (HL),$45                     ; A150  
                ADD HL,SP                       ; A152  
                LD (L7E00),A                    ; A153  
LA156           XOR $44                         ; A156  
                LD D,B                          ; A158  
                LD D,B                          ; A159  
                LD D,H                          ; A15A  
                JR NZ LA0FD                     ; A15B  

                INC HL                          ; A15D  
                LD (HL),$45                     ; A15E  
                LD B,E                          ; A160  
                INC (HL)                        ; A161  
                NOP                             ; A162  
                ADD A,B                         ; A163  
                XOR $44                         ; A164  
                LD D,B                          ; A166  
                LD C,L                          ; A167  
                LD D,H                          ; A168  
                JR NZ LA10B                     ; A169  

                INC HL                          ; A16B  
                LD (HL),$46                     ; A16C  
                LD B,C                          ; A16E  
                INC (HL)                        ; A16F  
                NOP                             ; A170  
                ADD A,C                         ; A171  
                XOR $44                         ; A172  
                LD D,B                          ; A174  
                LD C,L                          ; A175  
                LD D,B                          ; A176  
                LD D,H                          ; A177  
                JR NZ LA11A                     ; A178  

                INC HL                          ; A17A  
                LD (HL),$46                     ; A17B  
LA17D           INC (HL)                        ; A17D  
                JR C LA180                      ; A17E  
LA17F           EQU *-1                         ;

LA180           ADD A,D                         ; A180  
                XOR $44                         ; A181  
                LD D,B                          ; A183  
                LD C,L                          ; A184  
                LD B,E                          ; A185  
                LD D,H                          ; A186  
                JR NZ LA129                     ; A187  
LA188           EQU *-1                         ;

                INC HL                          ; A189  
                LD (HL),$46                     ; A18A  
                JR C LA1BE                      ; A18C  

                NOP                             ; A18E  
                ADD A,H                         ; A18F  
                XOR $53                         ; A190  
                LD D,H                          ; A192  
LA193           LD H,C                          ; A193  
                LD H,D                          ; A194  
                JR NZ LA137                     ; A195  

                INC HL                          ; A197  
                LD B,H                          ; A198  
                JR C LA1CB                      ; A199  

                JR NC LA19D                     ; A19B  

LA19D           OR (HL)                         ; A19D  
                XOR $50                         ; A19E  
LA19F           EQU *-1                         ;
                LD L,H                          ; A1A0  
                LD D,B                          ; A1A1  
                LD L,B                          ; A1A2  
                LD L,C                          ; A1A3  
                JR NZ LA146                     ; A1A4  

                INC HL                          ; A1A6  
                SCF                             ; A1A7  
                JR C LA1DA                      ; A1A8  

                LD SP,LDE00                     ; A1AA  
                XOR $4F                         ; A1AD  
                LD H,D                          ; A1AF  
LA1B0           LD C,H                          ; A1B0  
                LD L,C                          ; A1B1  
                LD (HL),E                       ; A1B2  
                LD (HL),H                       ; A1B3  
                JR NZ LA156                     ; A1B4  

                INC HL                          ; A1B6  
                SCF                             ; A1B7  
                JR C LA1EB                      ; A1B8  

                JR NC LA1BC                     ; A1BA  

LA1BC           JR NC LA1B0                     ; A1BC  

LA1BE           JR NZ LA17F                     ; A1BE  

                INC HL                          ; A1C0  
                LD (HL),$37                     ; A1C1  
                DEC (HL)                        ; A1C3  
                JR NC LA1C6                     ; A1C4  

LA1C6           LD A,($20F2)                    ; A1C6  
                LD A,D                          ; A1C9  
                LD B,C                          ; A1CA  
LA1CB           JR NZ LA17D                     ; A1CB  

                LD C,C                          ; A1CD  
                LD L,(HL)                       ; A1CE  
                LD B,C                          ; A1CF  
                NOP                             ; A1D0  
                LD B,H                          ; A1D1  
                JP P L7A20                      ; A1D2  

                LD B,D                          ; A1D5  
                JR NZ LA188                     ; A1D6  

                LD C,C                          ; A1D8  
                LD L,(HL)                       ; A1D9  
LA1DA           LD B,D                          ; A1DA  
                NOP                             ; A1DB  
                LD C,(HL)                       ; A1DC  
                JP P L7A20                      ; A1DD  

                LD B,A                          ; A1E0  
                JR NZ LA193                     ; A1E1  

                LD C,C                          ; A1E3  
                LD L,(HL)                       ; A1E4  
                LD B,A                          ; A1E5  
                NOP                             ; A1E6  
                LD E,B                          ; A1E7  
                JP P L7A20                      ; A1E8  

LA1EB           LD B,A                          ; A1EB  
                LD L,L                          ; A1EC  
                JR NZ LA19F                     ; A1ED  

                LD B,A                          ; A1EF  
                LD H,C                          ; A1F0  
                LD L,L                          ; A1F1  
                LD H,L                          ; A1F2  
                NOP                             ; A1F3  
                RST $38                         ; A1F4  
                RST $38                         ; A1F5  
                NOP                             ; A1F6  
                NOP                             ; A1F7  
                NOP                             ; A1F8  
                NOP                             ; A1F9  
                NOP                             ; A1FA  
                NOP                             ; A1FB  
                NOP                             ; A1FC  
                NOP                             ; A1FD  
                NOP                             ; A1FE  
                NOP                             ; A1FF  
*)

; Martins source 4

                ORG $A200

                PUSH IY
                DI
                CALL InA
                CALL InB
                CALL InG
                CALL Game
                POP IY
                IM 0
                EI
                RET

InA CALL MkE
 LD A,9:CALL SAt
 CALL IRL
 CALL DClr
 LD DE,128:LD HL,24
 LD BC,24:CALL Cc
 CALL TrE
 CALL DClr
 LD A,#F:CALL SAt
 RET
InB CALL FCk
 CALL KCk
 CALL InRn
 CALL SUI
 RET
InG CALL DClr
 LD DE,128:LD HL,24
 LD BC,24:CALL Cc
 CALL ClrMap
 CALL ClrHFl
 CALL MakeObj
 CALL InPl
 XOR A:LD (Aim),A
 LD (TkN),A:LD (VEnk),A
 LD (DFlg),A:LD (REnk),A
 LD H,A:LD L,A
 LD (Scor),HL
 LD A,1:LD (DTk),A
 LD (SEn),A
 LD (REn),A:LD (VEn),A
 LD A,3:LD (PlLiv),A
 CALL InLv
 LD HL,BScT:LD (BScPt),HL
 CALL SClr
 CALL PrtSc
 CALL PrtNL
 CALL PutMtns
 CALL Sts
 CALL StB
 CALL DispObj
 CALL CopyDown
 CALL GrumSet
 CALL EnR
 RET
Game CALL INTk:JR C,GameF
 LD HL,DTk:DEC (HL)
Game1 XOR A:LD (Aim),A
 LD (BkF),A
 CALL MvObj
 CALL EnKR:CALL EnKV
 CALL EnKS:CALL Keys
 CALL Full
 CALL Kemp
 CALL MovPlyr
 CALL Grumble
 CALL SClr
 CALL PrtSc
 CALL PrtNL
 CALL PutMtns
 CALL Sts
 CALL StB
 CALL DispObj
 CALL CopyDown
 CALL CkBon
 CALL DoBonks
 LD A,(kQuit):AND 1
 JR Z,GameF
 LD A,(DFlg):OR A
 CALL NZ,DPl
 LD A,(PlLiv):OR A
 JR Z,GameF
 LD A,(DTk):OR A
 JR NZ,Game
 JR Game1
GameF CALL KillFull
 RET

SUI LD HL,SUIT
 LD DE,#FFF0:LD BC,#10
 LDIR:LD A,#3A:LD I,A
 IM 2:RET
SUIT DEFS 4:JP IR
 DEFS 8:DEFB #18
IR PUSH AF:PUSH BC
 PUSH DE:PUSH HL:PUSH IX
 PUSH IY:EX AF,AF':EXX
 PUSH AF:PUSH BC:PUSH DE
 PUSH HL
 LD A,(REn):RRA:JR NC,IR1
 LD A,(IntFlag):XOR 1
 LD (IntFlag),A
 JR NZ,IR1
 LD IX,(IntPnt)
 CALL RDQ
 LD A,(InCt):ADD A,8
 LD (InCt),A
 JR NZ,IR2
 LD IX,IntLinD
IR2 LD (IntPnt),IX
 CALL RDQ
IR1 LD A,(VEn):RRA
 JR NC,IR4:LD A,(LvF)
 OR A:JR Z,IR1a
 LD A,1:LD (IntLog),A
 JR IR4
IR1a LD A,(LC)
 INC A:CP 5:JR NZ,IR3
 XOR A
IR3 LD (LC),A
 LD B,A
 CALL MvLv
IR4 POP HL:POP DE
 POP BC:POP AF:EXX
 EX AF,AF':POP IY:POP IX
 POP HL:POP DE:POP BC
 POP AF:EI:RET
EnR XOR A
 LD (InCt),A
 LD (IntFlag),A
 LD HL,IntLinD
 LD (IntPnt),HL
 LD HL,#1780
 LD DE,#0180
 CALL SL:EI:RET
RDQ LD A,(InCt)
 CP #80
 JR NC,RDQb:CP #40
 JP C,R1Q:JP R2Q
RDQb CP #C0
 JP C,R3Q:JP R4Q
IRLCl LD HL,#4000
 LD DE,#4001:LD BC,#7FF
 LD (HL),0:LDIR:RET
 RET
R1Q LD HL,#4750
R1Qa LD A,(IX):INC IX
 XOR (HL):LD (HL),A
 LD A,(IX):INC IX
 OR A:RET Z
 BIT 0,A:JR Z,R1Qb
 INC L
R1Qb BIT 1,A
 JR Z,R1Qa
 DEC H:LD A,H:CP #40
 JP NC,R1Qa
 LD H,#47:LD A,L
 SUB #20:LD L,A
 JP R1Qa
R2Q LD HL,#4070
R2Qa LD A,(IX):INC IX
 XOR (HL):LD (HL),A
 LD A,(IX):INC IX
 OR A:RET Z
 BIT 0,A:JR Z,R2Qb
 INC L
R2Qb BIT 1,A
 JR Z,R2Qa
 INC H:LD A,H:CP #48
 JP C,R2Qa
 LD H,#40:LD A,L
 ADD A,#20:LD L,A
 JP R2Qa
R3Q LD HL,#406F
R3Qa LD A,(IX):INC IX
 XOR (HL):LD (HL),A
 LD A,(IX):INC IX
 OR A:RET Z
 BIT 0,A:JR Z,R3Qb
 DEC L
R3Qb BIT 1,A
 JR Z,R3Qa
 INC H:LD A,H:CP #48
 JP C,R3Qa
 LD H,#40:LD A,L
 ADD A,#20:LD L,A
 JP R3Qa
R4Q LD HL,#474F
R4Qa LD A,(IX):INC IX
 XOR (HL):LD (HL),A
 LD A,(IX):INC IX
 OR A:RET Z
 BIT 0,A:JR Z,R4Qb
 DEC L
R4Qb BIT 1,A
 JR Z,R4Qa
 DEC H:LD A,H:CP #40
 JP NC,R4Qa
 LD H,#47:LD A,L
 SUB #20:LD L,A
 JP R4Qa
IRL LD IX,IntLinT
 LD IY,IntLinD:LD B,8
IRL1 PUSH BC:CALL IRLCl
 LD D,(IX):INC IX
 LD E,(IX):INC IX
 LD HL,#1780:CALL SL
 CALL IRLC1
 POP BC:DJNZ IRL1
 LD B,8
IRL2 PUSH BC:CALL IRLCl
 LD D,(IX):INC IX
 LD E,(IX):INC IX
 LD HL,#1880:CALL SL
 CALL IRLC2
 POP BC:DJNZ IRL2
 LD B,8
IRL3 PUSH BC:CALL IRLCl
 LD D,(IX):INC IX
 LD E,(IX):INC IX
 LD HL,#187F:CALL SL
 CALL IRLC3
 POP BC:DJNZ IRL3
 LD B,8
IRL4 PUSH BC:CALL IRLCl
 LD D,(IX):INC IX
 LD E,(IX):INC IX
 LD HL,#177F:CALL SL
 CALL IRLC4
 POP BC:DJNZ IRL4:RET
IRLC1 LD HL,#4750
IRLC1a LD A,(HL)
 LD (IY),A:INC IY
 CALL IRLU:LD A,(HL)
 OR A:JR Z,IRLC1b
 LD (IY),2:INC IY
 JR IRLC1a
IRLC1b CALL IRLD
 INC L:LD A,(HL)
 OR A:JR Z,IRLC1c
 LD (IY),1:INC IY
 JR IRLC1a
IRLC1c CALL IRLU
 LD A,(HL):OR A
 JR Z,IRLC1d:LD (IY),3
 INC IY:JR IRLC1a
IRLC1d LD (IY),0:INC IY
 RET
IRLC2 LD HL,#4070
IRLC2a LD A,(HL)
 LD (IY),A:INC IY
 CALL IRLD:LD A,(HL)
 OR A:JR Z,IRLC2b
 LD (IY),2:INC IY
 JR IRLC2a
IRLC2b CALL IRLU
 INC L:LD A,(HL)
 OR A:JR Z,IRLC2c
 LD (IY),1:INC IY
 JR IRLC2a
IRLC2c CALL IRLD
 LD A,(HL):OR A
 JR Z,IRLC2d:LD (IY),3
 INC IY:JR IRLC2a
IRLC2d LD (IY),0:INC IY
 RET
IRLC3 LD HL,#406F
IRLC3a LD A,(HL)
 LD (IY),A:INC IY
 CALL IRLD:LD A,(HL)
 OR A:JR Z,IRLC3b
 LD (IY),2:INC IY
 JR IRLC3a
IRLC3b CALL IRLU
 DEC L:LD A,(HL)
 OR A:JR Z,IRLC3c
 LD (IY),1:INC IY
 JR IRLC3a
IRLC3c CALL IRLD
 LD A,(HL):OR A
 JR Z,IRLC3d:LD (IY),3
 INC IY:JR IRLC3a
IRLC3d LD (IY),0:INC IY
 RET
IRLC4 LD HL,#474F
IRLC4a LD A,(HL)
 LD (IY),A:INC IY
 CALL IRLU:LD A,(HL)
 OR A:JR Z,IRLC4b
 LD (IY),2:INC IY
 JR IRLC4a
IRLC4b CALL IRLD
 DEC L:LD A,(HL)
 OR A:JR Z,IRLC4c
 LD (IY),1:INC IY
 JR IRLC4a
IRLC4c CALL IRLU
 LD A,(HL):OR A
 JR Z,IRLC4d
 LD (IY),3:INC IY
 JR IRLC4a
IRLC4d LD (IY),0:INC IY
 RET
IRLU DEC H:LD A,H:CP #40
 RET NC:LD H,#47:LD A,L
 SUB #20:LD L,A:RET
IRLD INC H:LD A,H:CP #48
 RET C:LD H,#40:LD A,L
 ADD A,#20:LD L,A:RET
CopyDown LD A,1
 LD (LvF),A
 XOR A
 LD (IntLog),A
 LD A,(VEn):RRA
 CALL C,DoLv
 CALL SCopy
 LD A,(VEn):RRA:RET NC
 LD B,5:LD HL,LvT+9
 LD DE,10:LD A,(PlPhi)
CopyD0 LD (HL),A
 ADD HL,DE:DJNZ CopyD0
 CALL DoLv
 XOR A
 LD (LvF),A
 LD A,(IntLog)
 OR A
 RET Z
 LD A,(LC):INC A
 CP 5:JR NZ,CopyD1:XOR A
CopyD1 LD (LC),A
 LD B,A:JP MvLv
DoLv LD B,5
 LD IX,LvT
DLv1 PUSH BC
 DEC B
 CALL PL
 LD BC,10
 ADD IX,BC
 POP BC
 DJNZ DLv1
 RET
InLv LD IX,LvT
 LD B,5
InLvb PUSH BC
 CALL ILv1
 LD DE,10
 ADD IX,DE
 POP BC
 DJNZ InLvb
 XOR A:LD (LC),A
 LD (LvF),A
 RET
ILv1 CALL Rn1
 LD A,(Sd):AND 15
 ADD A,5 :LD (IX),A
 CALL Rn1:LD HL,(Sd)
 LD DE,#40:LD A,H:AND 1
 LD H,A:ADD HL,DE:BIT 0,L
 JR Z,ILv2:EX DE,HL
 LD HL,0:OR A:SBC HL,DE
ILv2 LD (IX+1),L
 LD (IX+2),H
 CALL Rn1:LD HL,(Sd)
 LD DE,#300:LD A,H:AND 3
 LD H,A:ADD HL,DE:XOR A
 LD (IX+3),L:LD (IX+4),H
 LD (IX+5),A:LD (IX+6),A
 LD (IX+7),A:LD (IX+8),A
 LD A,(PlPhi):LD (IX+9),A
 JP PL
MvLv LD IX,LvT
 LD A,B:ADD A,A:ADD A,A
 ADD A,A:ADD A,B:ADD A,B
 LD E,A:LD D,0:ADD IX,DE
 CALL PL
 LD A,(IX):DEC A
 JP Z,ILv1:LD (IX),A
 LD L,(IX+5):LD H,(IX+6)
 LD E,(IX+1):LD D,(IX+2)
 ADD HL,DE
 LD (IX+5),L:LD (IX+6),H
 LD L,(IX+3):LD H,(IX+4)
 LD DE,0-#80:ADD HL,DE
 LD (IX+3),L:LD (IX+4),H
 LD E,(IX+7):LD D,(IX+8)
 OR A:ADC HL,DE
 JP M,ILv1
 LD (IX+7),L:LD (IX+8),H
 JP PL
PL LD C,(IX+6):SRA C
 SRA C:SRA C:LD A,(IX+9)
 NEG:ADD A,C:RET M
 CP #20:RET P
 LD C,A:LD B,0
 LD A,(IX+6):AND 7:LD E,A
 LD D,B:LD HL,Bits
 ADD HL,DE:LD A,(HL)
 LD HL,STab+160
 LD E,(IX+8):SLA E
 SBC HL,DE:LD E,(HL)
 INC L:LD D,(HL)
 EX DE,HL:ADD HL,BC
 XOR (HL):LD (HL),A
 RET
DPl LD IX,DPLT
 LD A,(REn):LD (tREn),A
 XOR A:LD (REn),A
DP1 LD E,(IX):INC IX
 LD C,(IX):INC IX
 LD A,E:OR C:JR Z,DP2
 PUSH IX:SLA C:LD B,0
 LD HL,DPPT:ADD HL,BC
 LD C,(HL):INC HL
 LD B,(HL):SLA E:LD D,0
 LD HL,DPPT:ADD HL,DE
 LD E,(HL):INC HL
 LD D,(HL):LD H,B:LD L,C
 CALL SL:POP IX:JR DP1
DP2 LD BC,0
DPa PUSH AF:POP AF
 CPI:JP V,DPa:LD DE,#A01C
 LD (Curs),DE:LD IX,DPMT
DP3 LD A,(IX):OR A
 JR Z,DP4:PUSH IX
 RRCA:RRCA:RRCA:RRCA
 CALL DPPrt
 POP IX:LD A,(IX):PUSH IX
 CALL DPPrt:POP IX:INC IX
 JR DP3
DP4 LD HL,PlLiv:DEC (HL)
 XOR A:LD (DFlg),A
 LD B,#10
DP9 PUSH BC:LD BC,#4000
DPA PUSH BC:POP BC
 CPI:JP V,DPA
 POP BC:DJNZ DP9
 LD IX,ObList:LD DE,obLen
DPN1 LD A,(IX):CP 17
 JR C,DPN2:CP 25
 JR NC,DPN2:LD (IX),0
 CP 19:CALL C,RTk
DPN2 ADD IX,DE:CP #FF
 JR NZ,DPN1:CALL InPl
 LD HL,TkN:LD A,(HL)
 LD C,A:LD (HL),11
 CP 11:JR C,DPN4
 LD B,1:CP 26:JR C,DPN3
 INC B:CP 56:JR C,DPN3
 INC B:CP 101:JR C,DPN3
 INC B:CP 151:JR C,DPN3
 INC B:CP 211:JR C,DPN3
 INC B
DPN3 PUSH BC
 CALL INTk:POP BC
 DJNZ DPN3:LD A,C
 LD (TkN),A:JR DPN5
DPN4 DEC A:LD (TkN),A
 CALL INTk
DPN5 XOR A:LD (DTk),A
 LD A,(tREn):LD (REn),A
 RET
DPPrt AND #F:JR Z,DPPr2
 DEC A:LD E,A
 ADD A,A:ADD A,E:LD E,A
 LD D,0:LD HL,DPMCT
 ADD HL,DE
 LD E,(HL):INC HL
 LD D,(HL):INC HL
 LD B,(HL):EX DE,HL
DPPr1 LD A,(HL):INC HL
 CALL DPPrL:DJNZ DPPr1
DPPr2 LD HL,(Curs)
 LD DE,10:ADD HL,DE
 LD (Curs),HL:RET
DPPrL PUSH HL:PUSH BC
 LD D,A:RRCA:RRCA:RRCA
 RRCA:CALL DPPrP
 LD A,D:EX DE,HL
 CALL DPPrP:CALL SL
 LD B,0:DJNZ $:DJNZ $
 DJNZ $:DJNZ $:DJNZ $
 DJNZ $:DJNZ $:DJNZ $
 DJNZ $:DJNZ $:DJNZ $
 DJNZ $:DJNZ $:DJNZ $
 DJNZ $:DJNZ $:DJNZ $
 POP BC:POP HL:RET
DPPrP PUSH DE:AND #F
 LD HL,DPMPT:ADD A,A
 LD E,A:LD D,0:ADD HL,DE
 LD C,(HL):INC HL
 LD B,(HL):LD HL,(Curs)
g ADD HL,BC:POP DE:RET
EnKR LD A,#FB
 IN A,(#FE):AND 8:LD C,A
 LD A,(REnk):XOR C:RET Z
 LD A,C:LD (REnk),A
 AND 8:RET NZ:LD A,(REn)
 XOR 1:LD (REn),A
 LD IX,(IntPnt):CALL RDQ
 RET
EnKV LD A,#FE:IN A,(#FE)
 AND 16:LD C,A
 LD A,(VEnk):XOR C:RET Z
 LD A,C:LD (VEnk),A
 AND 16:RET NZ:LD A,(VEn)
 XOR 1:LD (VEn),A
 LD B,5:LD HL,LvT+9
 LD DE,10:LD A,(PlPhi)
EnKV1 LD (HL),A
 ADD HL,DE:DJNZ EnKV1
 CALL DoLv:RET
EnKS LD A,#F7:IN A,(#FE)
 RRA:JR NC,EnKSn
 RRA:RET C
 CALL KillFull:XOR A
 LD (SEn),A:RET
EnKSn CALL GrumSet
 LD A,1:LD (SEn),A:RET
CkBon LD HL,(BScPt)
 LD E,(HL):INC HL
 LD D,(HL):LD HL,(Scor)
 OR A:SBC HL,DE:RET C
 LD HL,PlLiv:INC (HL)
 LD HL,(BScPt):INC HL
 INC HL:LD (BScPt),HL
 RET

BScT 		DEFW 100,200,500
 		DEFW 1000,2000,5000
 		DEFW 10000,#FFF0

PrtSc           LD HL,Scrn2+1                   ; A967  
                LD (Curs),HL                    ; A96A  
                LD HL,(FCount)                  ; A96D  
                LD C,$01                        ; A970  
                LD DE,10000                     ; A972  
                CALL PS2                        ; A975  
                LD DE,1000                      ; A978  
                CALL PS2                        ; A97B  
                LD DE,100                       ; A97E  
                CALL PS2                        ; A981  
                LD DE,10                        ; A984  
                CALL PS2                        ; A987  
                LD A,L                          ; A98A  
                CALL PSOt                       ; A98B  
                XOR A                           ; A98E  
                CALL PSOt                       ; A98F  
                XOR A                           ; A992  
                CALL PSOt                       ; A993  
                RET                             ; A996  

PS2             XOR A                           ; A997  
PS2a            INC A                           ; A998  
                SBC HL,DE                       ; A999  
                JR NC PS2a                      ; A99B  

                ADD HL,DE                       ; A99D  
                CP C                            ; A99E  
                RET Z                           ; A99F  

                DEC C                           ; A9A0  
                DEC A                           ; A9A1  
                JP PSOt                         ; A9A2  

PSOt            PUSH HL                         ; A9A5  
                PUSH DE                         ; A9A6  
                PUSH BC                         ; A9A7  
                LD IX,CharsDec                  ; A9A8  
                ADD A,A                         ; A9AC  
                ADD A,A                         ; A9AD  
                ADD A,A                         ; A9AE  
                LD E,A                          ; A9AF  
                LD D,$00                        ; A9B0  
                ADD IX,DE                       ; A9B2  
                LD HL,(Curs)                    ; A9B4  
                INC L                           ; A9B7  
                LD (Curs),HL                    ; A9B8  
                LD DE,$0020                     ; A9BB  
                LD B,$08                        ; A9BE  
PSOt1           LD A,(IX)                       ; A9C0  
                LD (HL),A                       ; A9C3  
                ADD HL,DE                       ; A9C4  
                INC IX                          ; A9C5  
                DJNZ PSOt1                      ; A9C7  

                POP BC                          ; A9C9  
                POP DE                          ; A9CA  
                POP HL                          ; A9CB  
                RET                             ; A9CC  

PrtNL           LD HL,Scrn2+24                  ; A9CD  
                LD (Curs),HL                    ; A9D0  
                LD A,(PlLiv)                    ; A9D3  
                CALL PSOt                       ; A9D6  
                RET                             ; A9D9  

; End of source 4

                ORG $AA00                       ; 0000 

; Martin's source #1

DispObj LD IX,ObList
DispOb1 LD A,(IX)
 CP #FF
 RET Z
 OR A
 CALL NZ,DoObj
 LD DE,obLen
 ADD IX,DE
 JP DispOb1
DoObj PUSH IX
 CALL GMat
 JR C,DoObK
 LD A,(IX+obShp)
 CALL ShPnt
 PUSH DE
 LD IY,TempP
 LD B,(IX)
 INC IX
DoObL PUSH BC
 CALL MMul
 LD DE,6
 ADD IX,DE
 LD E,4
 ADD IY,DE
 POP BC
 DJNZ DoObL
 POP IX
 LD DE,TempP
 LD B,(IX)
 INC IX
 CALL MLine
DoObK POP IX
 RET
GMat LD A,(PlPhi)
 SUB (IX+obPhi)
 LD D,A
 CALL Cosine
 LD (MatCos),BC
 LD A,D
 CALL Sine
 LD (MatSin),BC
 LD A,(PlPhi)
 CALL Cosine
 LD A,B
 LD (CosPP),BC
 LD H,(IX+obPxh)
 LD L,(IX+obPxl)
 LD DE,(PlPx)
 ADD HL,HL
 EX DE,HL
 ADD HL,HL
 EX DE,HL
 OR A
 SBC HL,DE
 SRA H:RR L
 LD (Dispx),HL
 OR A:CALL NZ,FMul
 RR C
 CALL C,NegHL
 PUSH HL
 LD A,(PlPhi)
 CALL Sine
 LD A,B
 LD (SinPP),BC
 LD H,(IX+obPzh)
 LD L,(IX+obPzl)
 LD DE,(PlPz)
 ADD HL,HL
 EX DE,HL
 ADD HL,HL
 EX DE,HL
 OR A
 SBC HL,DE
 SRA H:RR L
 LD (Dispz),HL
 OR A:CALL NZ,FMul
 RR C
 CALL NC,NegHL
 POP DE
 ADD HL,DE
 LD (MatPx),HL
 LD BC,(SinPP)
 LD A,B
 LD HL,(Dispx)
 OR A:CALL NZ,FMul
 RR C
 CALL C,NegHL
 PUSH HL
 LD BC,(CosPP)
 LD A,B
 LD HL,(Dispz)
 OR A:CALL NZ,FMul
 RR C
 CALL C,NegHL
 POP DE
 ADD HL,DE
 LD (MatPz),HL
 LD A,H
 RLCA
 RET C
 LD D,(IX+obDis)
 LD E,0
 SBC HL,DE
 CCF
 RET C
 ADD HL,DE
 LD DE,(MatPx)
 BIT 7,D
 JR Z,KSill1
 LD A,D
 CPL
 LD D,A
 LD A,E
 CPL
 LD E,A
 INC DE
KSill1 OR A
 SBC HL,DE
 RET
MMul LD H,(IX+ptPxh)
 LD L,(IX+ptPxl)
 LD BC,(MatCos)
 LD A,B
 OR A:CALL NZ,FMul
 RR C
 CALL C,NegHL
 PUSH HL
 LD H,(IX+ptPzh)
 LD L,(IX+ptPzl)
 LD BC,(MatSin)
 LD A,B
 OR A:CALL NZ,FMul
 RR C
 CALL NC,NegHL
 POP DE
 ADD HL,DE
 LD DE,(MatPx)
 ADD HL,DE
 LD (TX),HL
 LD H,(IX+ptPxh)
 LD L,(IX+ptPxl)
 LD BC,(MatSin)
 LD A,B
 OR A:CALL NZ,FMul
 RR C
 CALL C,NegHL
 PUSH HL
 LD H,(IX+ptPzh)
 LD L,(IX+ptPzl)
 LD BC,(MatCos)
 LD A,B
 OR A:CALL NZ,FMul
 RR C
 CALL C,NegHL
 POP DE
 ADD HL,DE
 LD DE,(MatPz)
 ADD HL,DE
 LD D,H:LD E,L
 PUSH DE
 LD HL,(TX)
 CALL FDiv
 LD DE,128
 ADD HL,DE
 LD (IY),L
 LD (IY+1),H
 LD H,(IX+ptPyh)
 LD L,(IX+ptPyl)
 POP DE
 CALL FDiv
 LD DE,128
 ADD HL,DE
 LD (IY+2),L
 LD (IY+3),H
 RET
ShPnt LD H,0
 LD L,A
 DEC L
 ADD HL,HL
 ADD HL,HL
 LD DE,ShpVec
 ADD HL,DE
 LD C,(HL)
 INC HL
 LD B,(HL)
 INC HL
 LD E,(HL)
 INC HL
 LD D,(HL)
 LD IXH,B
 LD IXL,C
 RET
MLine PUSH BC
 PUSH DE
 LD L,(IX)
 CALL MLinG
 LD L,(IX+1)
 CALL MLinG
 POP DE
 EXX
 POP DE
 EXX
 POP HL
 EXX
 POP HL
 CALL CLine
 POP DE
 POP BC
 INC IX
 INC IX
 DJNZ MLine
 RET
MLinG POP IY
 LD H,0
 ADD HL,HL
 ADD HL,HL
 ADD HL,DE
 LD C,(HL)
 INC HL
 LD B,(HL)
 PUSH BC
 INC HL
 LD C,(HL)
 INC HL
 LD B,(HL)
 PUSH BC
 JP (IY)
Cosine ADD A,64
Sine PUSH DE
 PUSH HL
 LD C,A
 AND #3F
 RL C
 RL C
 JR NC,Sine1
 XOR #3F
Sine1 LD E,A
 LD D,0
 LD HL,SineT
 ADD HL,DE
 LD B,(HL)
 POP HL
 POP DE
 RET
SineT DEFB 3,9,16,22
 DEFB 28,34,41,47,53,59
 DEFB 65,71,77,83,89,95
 DEFB 101,107,112,118
 DEFB 123,129,134,140
 DEFB 145,150,155,160
 DEFB 165,170,174,179
 DEFB 183,188,192,196
 DEFB 200,204,207,211
 DEFB 215,218,221,224
 DEFB 227,230,233,235
 DEFB 238,240,242,244
 DEFB 246,248,249,250
 DEFB 252,253,254,254
 DEFB 255,255,0,0
FMul LD B,8
 EX DE,HL
 LD HL,0
FMul1 SRA H
 RR L
 RRA
 JR NC,FMul2
 ADD HL,DE
FMul2 DJNZ FMul1
 SRA H
 RR L
 RET NC
 INC HL
 RET
FDiv LD A,H
 EX AF,AF'
 BIT 7,H
 JR Z,FDiva
 LD A,H
 CPL
 LD H,A
 LD A,L
 CPL
 LD L,A
 INC HL
FDiva BIT 7,D
 JR Z,FDivb
 LD A,D
 CPL
 LD D,A
 LD A,E
 CPL
 LD E,A
 INC DE
FDivb EXX
 LD HL,0
 LD DE,#100
 EXX
 OR A
FDiv1 SBC HL,DE
 JP C,FDiv4
 JP Z,FDiv3
 ADD HL,DE
 SLA E
 RL D
 EXX
 SLA E
 RL D
 EXX
 JP NC,FDiv1
 LD HL,0
 JP FDivc
FDiv2 SBC HL,DE
 JR C,FDiv4
FDiv3 ADD HL,HL
 EXX
 ADD HL,DE
 SRL D
 RR E
 EXX
 JP NC,FDiv2
 JP FDivd
FDiv4 ADD HL,DE
 ADD HL,HL
 EXX
 SRL D
 RR E
 EXX
 JP NC,FDiv2
FDivd EXX
FDivc EX AF,AF'
 RLA
 RET NC
NegHL LD A,H
 CPL
 LD H,A
 LD A,L
 CPL
 LD L,A
 INC HL
 RET
IMul LD HL,0
 LD A,16
IMul1 SRA H
 RR L
 RR D
 RR E
 JR NC,IMul2
 ADD HL,BC
IMul2 DEC A
 JR NZ,IMul1
 SRA H
 RR L
 RR D
 RR E
 RET
IDiv LD A,16
IDiv0 SLI E
 RL D
 RL L
 RL H
 SBC HL,BC
 JR NC,IDiv1
 ADD HL,BC
 DEC E
IDiv1 DEC A
 JR NZ,IDiv0
 RET
Line LD A,L
 SUB E
 JR NC,Linexs
 EX DE,HL
Linexs PUSH DE
 PUSH HL
 LD A,E
 AND 7
 LD C,A
 SRL D
 RR E
 SRL D
 RR E
 SRL D
 RR E
 LD B,0
 LD HL,Bits
 ADD HL,BC
 LD C,(HL)
 LD HL,Scrn2
 ADD HL,DE
 LD A,C
 LD DE,32
 EXX
 POP HL
 POP DE
 LD A,L
 SUB E
 LD C,A
 LD A,H
 SUB D
 JR NC,Line2
 NEG
 EXX
 LD DE,0-32
 EXX
Line2 LD B,A
 SUB C
 JP NC,Line3
 LD L,C
 SRL L
 LD A,B
 NEG
 LD E,A
 LD D,#FF
 JR NZ,Line2a
 LD D,A
Line2a XOR A
 LD B,A
 LD H,A
 LD A,C
 EXX
 OR A
 RET Z
 LD B,A
 LD A,C
LineMX EXX
 ADD HL,DE
 BIT 7,H
 JR Z,LineMX1
 ADD HL,BC
 EXX
 OR (HL)
 LD (HL),A
 RRC C
 ADC HL,DE
 LD A,C
 DJNZ LineMX
 JP LineMXF
LineMX1 EXX
 RRC C
 JP NC,LineMX2
 OR (HL)
 LD (HL),A
 INC L
 XOR A
LineMX2 OR C
 DJNZ LineMX
LineMXF OR (HL)
 LD (HL),A
 RET
Line3 LD L,B
 SRL L
 LD A,C
 NEG
 LD E,A
 LD D,#FF
 JR NZ,Line3a
 LD D,A
Line3a LD C,B
 XOR A
 LD B,A
 LD H,A
 LD A,C
 EXX
 OR A
 RET Z
 LD B,A
 LD A,C
 OR (HL)
 LD (HL),A
LineMY EXX
 ADD HL,DE
 BIT 7,H
 JR Z,LineMY1
 ADD HL,BC
 EXX
 RRC C
 ADC HL,DE
 LD A,C
 OR (HL)
 LD (HL),A
 DJNZ LineMY
 RET
LineMY1 EXX
 ADD HL,DE
 LD A,C
 OR (HL)
 LD (HL),A
 DJNZ LineMY
 RET
CLine LD A,H
 OR D
 JR Z,CLin1z
 LD B,2
CLin1 PUSH BC
 CALL CLinM
 LD B,H
 LD C,L
 LD HL,255
 OR A
 SBC HL,DE
 EX DE,HL
 LD HL,255
 OR A
 SBC HL,BC
 POP BC
 DJNZ CLin1
CLin1z EXX
 LD A,H
 OR D
 JR Z,CLin2z
 LD B,2
CLin2 PUSH BC
 CALL CLinM
 LD B,H
 LD C,L
 LD HL,255
 OR A
 SBC HL,DE
 EX DE,HL
 LD HL,255
 OR A
 SBC HL,BC
 POP BC
 DJNZ CLin2
CLin2z SRL L
 LD A,L
 SRL L
 ADD A,L
 EXX
 LD H,A
 EXX
 SRL E
 LD A,E
 SRL E
 ADD A,E
 EXX
 LD D,A
 CALL Line
 RET
CLinM BIT 7,H
 JR NZ,CLiM1
 BIT 7,D
 JR NZ,CLiM2
 RET
CLiM1 BIT 7,D
 JR NZ,KillLine
 EX DE,HL
 EXX
 EX DE,HL
 EXX
CLiM2 PUSH HL
 LD B,H
 LD C,L
 OR A
 SBC HL,DE
 EXX
 EX DE,HL
 OR A
 SBC HL,DE
 PUSH HL
 EXX
 POP DE
 PUSH HL
 BIT 7,D
 JR Z,CLiM3
 EX AF,AF'
 LD A,D
 CPL
 LD D,A
 LD A,E
 CPL
 LD E,A
 INC DE
 EX AF,AF'
CLiM3 EX AF,AF'
 CALL IMul
 POP BC
 CALL IDiv
 EX AF,AF'
 JR Z,CLiM4
 LD A,D
 CPL
 LD D,A
 LD A,E
 CPL
 LD E,A
 INC DE
CLiM4 PUSH DE
 EXX
 POP HL
 ADD HL,DE
 EXX
 POP DE
 LD HL,0
 RET
KillLine POP AF
 POP AF
 RET
Point LD A,D
 LD H,0
 CP 192
 RET NC
 PUSH BC
 LD A,E
 AND 7
 LD C,A
 LD B,H
 LD HL,Bits
 ADD HL,BC
 LD A,(HL)
 LD HL,STab
 LD C,D
 ADD HL,BC
 ADD HL,BC
 LD C,(HL)
 INC HL
 LD H,(HL)
 LD L,C
 LD C,E
 SRL C
 SRL C
 SRL C
 ADD HL,BC
 POP BC
 RET
Circle LD (CX),DE
 LD (CY),HL
 LD HL,0
 LD (ER),HL
 LD (X),HL
 XOR A
 SBC HL,BC
 LD (Y),HL
 CALL CPoints
CLoop1 LD HL,(ER)
 LD DE,(X)
 ADD HL,DE
 ADD HL,DE
 INC HL
 LD B,H
 LD C,L
 LD (ER),HL
 LD DE,(Y)
 INC HL
 ADD HL,DE
 ADD HL,DE
 PUSH HL
 EX DE,HL
 BIT 7,B
 JR Z,Circ2
 XOR A
 LD H,A
 LD L,A
 SBC HL,BC
 LD B,H
 LD C,L
Circ2 BIT 7,D
 JR Z,Circ3
 XOR A
 LD H,A
 LD L,A
 SBC HL,DE
 LD D,H
 LD E,L
Circ3 EX DE,HL
 OR A
 SBC HL,BC
 POP HL
 JR NC,Circ4
 LD (ER),HL
 LD HL,(Y)
 INC HL
 LD (Y),HL
Circ4 LD HL,(X)
 INC HL
 LD (X),HL
 CALL CPoints
 LD HL,(X)
 LD DE,(Y)
 ADD HL,DE
 BIT 7,H
 JR NZ,CLoop1
 RET
CPoints LD BC,(X)
 LD DE,(Y)
 CALL CP1
 CALL CplDE
 CALL CP1
 CALL CplDE
 CALL CplBC
 CALL CP1
 CALL CplDE
 CALL CP1
 CALL CplDE
 CALL CplBC
 LD H,B
 LD L,C
 LD B,D
 LD C,E
 EX DE,HL
 CALL CP1
 CALL CplDE
 CALL CP1
 CALL CplDE
 CALL CplBC
 CALL CP1
 CALL CplDE
 CALL CP1
 RET
CP1 PUSH DE
 LD HL,(CX)
 ADD HL,DE
 LD E,L
 LD HL,(CY)
 ADD HL,BC
 LD D,L
 CALL Point
 OR (HL)
 LD (HL),A
 POP DE
 RET
CplDE LD A,D
 CPL
 LD D,A
 LD A,E
 CPL
 LD E,A
 RET
CplBC LD A,B
 CPL
 LD B,A
 LD A,C
 CPL
 LD C,A
 RET
Drip LD A,13
 LD C,35
 JR Snd
Bonk XOR A
 LD C,60
 JR Snd
Blip XOR A
 LD C,30
 JR Snd
Snd LD HL,SEn:BIT 0,(HL)
 RET Z:LD B,15
 LD (SndF),A
 LD A,(Border)
 LD E,A
 OR #18
 LD D,A
Snd1 LD A,D
 OUT (254),A
 CALL SndDel
 LD A,E
 OUT (254),A
 CALL SndDel
SndF NOP
 DJNZ Snd1
 RET
SndDel PUSH BC
 LD B,C
SndD1 ADD HL,HL
 ADD HL,DE
 DJNZ SndD1
 POP BC
 RET
Rand1 LD HL,(Seed+2)
 RL L
 RL H
 RL L
 RL H
 LD C,H
 LD A,(Seed)
 RLA
 LD B,A
 LD DE,(Seed+1)
 RL E
 RL D
 RES 7,D
 LD HL,(Seed)
 ADD HL,BC
 LD (Seed),HL
 LD HL,(Seed+2)
 ADC HL,DE
 RES 7,H
 LD (Seed+2),HL
 RET M
 LD HL,Seed
Rnd1 INC (HL)
 RET NZ
 INC HL
 JP Rnd1
InitRand LD HL,(23672)
 LD (Seed),HL
 LD A,R
 OR #80
 LD H,A
 LD A,(23674)
 LD L,A
 LD (Seed+2),HL
 RET
Rand PUSH HL
 PUSH DE
 PUSH BC
 CALL Rand1
 LD A,(Seed)
 CP 0
 POP BC
 POP DE
 POP HL
 RET

                ORG $B000

; Martin's source #2

MPlyr LD IY,PlShp
 XOR A:LD (BonkFlg),A
 LD A,(kZap):LD E,A
 LD L,5:LD H,22
 CALL MPZ
 CALL C,Drip
 LD DE,(kRot)
 LD L,4
 CALL MPR
 LD DE,(kMov)
 LD L,7
 CALL MPE
 RET NC
 LD A,1
 LD (BonkFlg),A
 RET
MPR LD A,(IY+obWSp)
 RRCA:RRCA:RRCA:RRCA
 LD C,A
 LD A,E
 XOR D
 RRA
 JR NC,MPRN
 BIT 0,D
 JR Z,MPRt
 LD A,C
 AND 7
 JR Z,MPR3
 BIT 3,C
 JR Z,MPRDec
 JR MPR1
MPR3 LD C,9
 JR MPRC
MPRN LD A,C
 AND 7
 RET Z
 DEC C
 JR MPRC
MPRt LD A,C
 AND 7
 JR Z,MPR2
 BIT 3,C
 JR NZ,MPRDec
MPR1 CP L
 JR Z,MPRC
 INC C
 JR MPRC
MPRDec DEC C:LD A,C
 AND 7:JR Z,MPRC
 DEC C
 JR MPRC
MPR2 LD C,1
 JR MPRC
MPRC LD A,C
 ADD A,A:ADD A,A
 ADD A,A:ADD A,A
 LD B,A
 LD A,(IY+obWSp)
 AND #F
 OR B
 LD (IY+obWSp),A
 LD A,C
 AND 7
 BIT 3,C
 JR Z,MPRC1
 NEG
MPRC1 LD C,A
 LD A,(IY+obPhi)
 ADD A,C
 LD (IY+obPhi),A
 RET
MPE LD A,(IY+obWSp)
 LD C,A
 LD A,D
 XOR E
 RRA
 JR NC,MPEN
 BIT 0,D
 JR NZ,MPF
 LD A,C
 AND 7
 JR Z,MPE3
 BIT 3,C
 JR Z,MPEDec
 JR MPE1
MPE3 LD C,9
 JR MPEC
MPEN LD A,C
 AND 7
 RET Z
 DEC C
 JR MPEC
MPF LD A,C
 AND 7
 JR Z,MPE2
 BIT 3,C
 JR NZ,MPEDec
MPE1 CP L
 JR Z,MPEC
 INC C
 JR MPEC
MPEDec DEC C:LD A,C
 AND 7:JR Z,MPEC
 DEC C
 JR MPEC
MPE2 LD C,1
 JR MPEC
MPEC LD A,C:AND #F
 LD B,A:LD A,(IY+obWSp)
 AND #F0:OR B
 LD (IY+obWSp),A
 AND 7
 RET Z
 LD (VN),A
 LD HL,29
 BIT 3,C
 CALL NZ,NegHL
 LD (Vtor),HL
 LD A,(IY+obPhi)
 LD (VPhi),A
 LD A,1
 LD (VFlags),A
 LD L,(IY+obPxl)
 LD H,(IY+obPxh)
 LD (VPx),HL
 LD A,(IY+obHFl)
 LD (VHFl),A
 LD L,(IY+obPzl)
 LD H,(IY+obPzh)
 LD (VPz),HL
 LD HL,BumTabL
 LD (DisTab),HL
 PUSH IY
 CALL VecMove
 POP IY
 LD HL,(VPx)
 LD (IY+obPxl),L
 LD (IY+obPxh),H
 LD HL,(VPz)
 LD (IY+obPzl),L
 LD (IY+obPzh),H
 LD A,(VFlags)
 RLCA
 RET NC
 LD A,(IY+obWSp)
 AND #F0
 LD (IY+obWSp),A
 SCF:RET
MPZ LD A,(IY+obWSp+1)
 OR A
 JR Z,MPZY
 DEC A
 LD (IY+obWSp+1),A
 OR A:RET
MPZY LD A,E
 RRA:CCF:RET NC
 LD A,(nObj)
 INC A
 CP MaxnObj
 RET NC
 LD (nObj),A
 LD A,(IY+obWSp+1)
 LD A,L
 LD (IY+obWSp+1),A
 PUSH HL
 CALL FOS
 POP HL
 LD (IX),H
 LD A,(IY+obPhi)
 LD (IX+obPhi),A
 LD (IX+obDis),20
 LD (IX+obMov),3
 LD (IX+obWSp),33
 LD A,(IY+obHFl)
 LD (IX+obHFl),A
 LD L,(IY+obPxl)
 LD H,(IY+obPxh)
 LD (IX+obPxh),H
 LD (IX+obPxl),L
 LD L,(IY+obPzl)
 LD H,(IY+obPzh)
 LD (IX+obPzh),H
 LD (IX+obPzl),L
 PUSH IY
 CALL MovBull
 POP IY
 SCF:RET
Keys LD BC,#F7FE
 IN A,(C):RRCA:RRCA
 LD (kQuit),A:LD BC,#8FE
 IN A,(C):LD (kZap),A
 LD BC,#1FFE:IN E,(C)
 LD BC,#EFFE:IN A,(C)
 RRCA:RRCA:AND E:RRCA
 RRCA:LD (kB),A
 LD BC,#0FFE
 IN A,(C):RRCA:RRCA:RRCA
 LD (kF),A
 LD BC,#F8FE:IN E,(C)
 LD BC,#F7FE:IN A,(C)
 RRCA:RRCA:RRCA:AND E
 RRCA:LD (kL),A
 LD BC,#E8FE:IN A,(C)
 RRCA:RRCA:LD (kR),A:RET
SClr LD HL,Scrn2
 LD DE,Scrn2+1:LD (HL),0
 LD BC,#A00:LDIR
 LD HL,#CC00:LD DE,#CC01
 LD BC,#BFF:LD (HL),0
 LDIR:RET
SCopy LD HL,Scrn2
 LD IX,CTab:LD A,#58
 LD B,0:SCop2 LD E,(IX)
 INC IX:LD D,(IX):INC IX
 LD C,(IX):INC IX:LDIR
 CP D:JR NZ,SCop2:RET
DClr LD HL,#4000
 LD DE,#4001:LD BC,#17FF
 LD (HL),0:LDIR:RET
SetAttr LD HL,#5800
 LD DE,#5801:LD BC,#2FF
 LD (HL),A:LDIR:RRA:RRA
 RRA:AND 7:LD (Border),A
 OUT (#FE),A:RET
Sqr BIT 7,A:JR Z,Sq1:NEG
Sq1 LD C,A:LD HL,0:LD B,H
Sq2 SRL A:JR NC,Sq3
 ADD HL,BC:Sq3 RET Z
 SLA C:RL B:JP Sq2
Sites LD HL,#C610:LD B,8
 LD DE,32:LD A,#80
Sigc LD (HL),A:ADD HL,DE
 DJNZ Sigc:LD HL,#D110
 LD B,8:Sigd LD (HL),A
 ADD HL,DE:DJNZ Sigd
 LD HL,#C70B:LD B,10
 LD A,#FF:Siga LD (HL),A
 INC L:DJNZ Siga:LD B,10
 LD HL,#D10B
 LD B,10:Sigb LD (HL),A
 INC L:DJNZ Sigb:RET
SiteBits LD A,(Aim):OR A
 JR NZ,SigB2:LD HL,#C70B
 LD DE,32:CALL SigD10
 LD HL,#C715:CALL SigD10
 LD HL,#D10B:LD DE,0-32
 CALL SigD10:LD HL,#D115
SigD10 LD B,12
SigD10a SET 7,(HL)
 ADD HL,DE:DJNZ SigD10a
 RET
SigB2 LD DE,32:LD C,#80
 LD HL,#C70B:CALL SigR12
 LD C,#80:LD HL,#C715
 CALL SigL12:LD DE,0-32
 LD C,#80:LD HL,#D10B
 CALL SigR12:LD C,#80
 LD HL,#D115
SigL12 LD B,12
SL2a LD A,(HL):OR C
 LD (HL),A:RLC C
 JR NC,SL2b:DEC L
SL2b ADD HL,DE:DJNZ SL2a
 RET
SigR12 LD B,12
SR2a LD A,(HL):OR C
 LD (HL),A:RRC C
 JR NC,SR2b:INC L
SR2b ADD HL,DE:DJNZ SR2a
 RET
DF LD L,(IY+obPzl)
 LD H,(IY+obPzh)
 LD E,(IX+obPzl)
 LD D,(IX+obPzh)
 SLA E:RL D:SLA L:RL H
 OR A:SBC HL,DE:LD C,H
 CALL M,NegHL:SRA H:RR L
 PUSH HL:LD L,(IY+obPxl)
 LD H,(IY+obPxh)
 LD E,(IX+obPxl)
 LD D,(IX+obPxh)
 SLA L:RL H:SLA E:RL D
 OR A:SBC HL,DE:LD B,H
 CALL M,NegHL:SRA H:RR L
 POP DE:PUSH BC:CALL DD
 EXX:LD A,H:CPL:LD B,A
 LD A,L:CPL:LD C,A:INC BC
 CALL DA:POP BC:LD D,A
 LD A,B:XOR C:LD A,D
 JP P,DF1:NEG:DF1 OR A
 BIT 7,C:RET Z:XOR #80
 RET
DD EXX:LD HL,0:LD DE,#100
 EXX:OR A:DD1 SBC HL,DE
 JP C,DD4:JP Z,DD3
 ADD HL,DE:SLA E:RL D
 EXX:SLA E:RL D:EXX
 JP NC,DD1:LD HL,#7FFF
 EXX:RET
DD2 SBC HL,DE:JR C,DD4
DD3 ADD HL,HL:EXX
 ADD HL,DE:SRL D:RR E
 EXX:JP NC,DD2:RET
DD4 ADD HL,DE:ADD HL,HL
 EXX:SRL D:RR E:EXX
 JP NC,DD2:RET
DA LD D,0:EXX:LD C,#40
 LD B,6:LD A,C:DA1 EXX
 LD E,A:LD HL,AtnT
 ADD HL,DE:LD E,(HL)
 INC HL:LD H,(HL):LD L,E
 OR A:ADC HL,BC:EXX
 JP M,DA2:SUB C:DA2 SRL C
 ADD A,C:DJNZ DA1:SRL A
 RET
CHFl LD HL,THF:LD BC,#FE
LD DE,THF+2:LD (HL),1
INC HL:LD (HL),0:LDIR:RET
GHFl LD HL,THF:LD BC,#100
 XOR A:CPIR:DEC HL:INC C
 LD A,C:NEG:LD (HL),A:RET
KCk LD B,0:LD E,B
KC1 IN A,(#DF):CP 32
 JR C,KC2:INC E
KC2 DJNZ KC1:LD HL,KFl
JCk LD A,E:LD (HL),0:CP 3
 RET NC:LD (HL),1:RET
FCk LD BC,20000:LD E,0
FC1 IN A,(#7F):LD L,A
 SRL L:OR L:RRA:JR NC,FCI
 SRL L:LD A,L:SRL L:OR L
 RRA:JR C,FC2:FCI INC E
FC2 CPI:JP V,FC1
 LD HL,FFl:JR JCk
VecMove CALL VRes
 CALL VSplit
VecM1 CALL VIt
 CALL Bp
 JR C,VecM2
 LD HL,VN
 DEC (HL)
 JR NZ,VecM1
VecM2 CALL VSet
 RET
VBMove CALL VSplit
VBM1 CALL VIt
 CALL Bp
 RET C
 LD HL,VN
 DEC (HL)
 JR NZ,VBM1
 RET
VSplit LD A,(VPhi)
 CALL Sine
 LD HL,(Vtor)
 LD A,B
 OR A:CALL NZ,FMul
 RR C
 CALL C,NegHL
 LD (VX),HL
 LD A,(VPhi)
 CALL Cosine
 LD HL,(Vtor)
 LD A,B
 OR A:CALL NZ,FMul
 RR C
 CALL C,NegHL
 LD (VZ),HL
 RET
VIt LD HL,(VX)
 ADD HL,HL
 EX DE,HL
 LD HL,(VPx)
 ADD HL,HL
 ADD HL,DE
 SRA H:RR L
 LD (VTx),HL
 LD HL,(VZ)
 ADD HL,HL
 EX DE,HL
 LD HL,(VPz)
 ADD HL,HL
 ADD HL,DE
 SRA H:RR L
 LD (VTz),HL
 RET
VRes CALL VPt
 CPL
 AND (HL)
 LD (HL),A
 RET
VSet CALL VPt
 OR (HL)
 LD (HL),A
 RET
VPt LD A,(VPx+1)
 LD D,A
 LD A,(VPz+1)
 LD E,A
 JP MapPt
ClrMap LD HL,Map
 LD DE,Map+1
 LD BC,2047
 LD (HL),0
 LDIR
 RET
Bp LD B,#FF
Bp1 LD C,#FF
Bp2 LD A,(VTx+1)
 ADD A,A
 ADD A,B
 ADD A,B
 SRA A
 LD D,A
 LD A,(VTz+1)
 ADD A,A
 ADD A,C
 ADD A,C
 SRA A
 LD E,A
 CALL MapPt
 AND (HL)
 JR Z,Bp4
 PUSH BC
Bp2a CALL ObSearch
 JR NC,Bp3
 CALL BpType
 JR NC,Bp2a
 CALL BumMaths
 JR C,Bped
Bp3 POP BC
Bp4 INC C
 LD A,C
 CP 2
 JR NZ,Bp2
 INC B
 LD A,B
 CP 2
 JR NZ,Bp1
 LD HL,(VTx)
 LD (VPx),HL
 LD HL,(VTz)
 LD (VPz),HL
 OR A
 RET
Bped POP BC
Bped1 LD A,(VFlags)
 OR #80
 LD (VFlags),A
 SCF
 RET
ObSearch LD IY,PlShp
 LD BC,obLen
ObSeL LD A,(IY)
 CP #FF
 RET Z
 OR A
 JR Z,ObSeN
 LD A,(IY+obPzh)
 CP E
 JP NZ,ObSeN
 LD A,(IY+obPxh)
 CP D
 SCF
 RET Z
ObSeN ADD IY,BC
 JP ObSeL
BumMaths LD E,(IY+obShp)
 LD D,0:DEC E
 LD HL,(DisTab)
 ADD HL,DE
 ADD HL,DE
 LD E,(HL)
 INC HL
 LD D,(HL)
 LD (BpDist),DE
 LD H,(IY+obPxh)
 LD L,(IY+obPxl)
 ADD HL,HL
 EX DE,HL
 LD HL,(VTx)
 ADD HL,HL
 OR A
 SBC HL,DE
 SRA H:RR L
 BIT 7,H
 CALL NZ,NegHL
 LD DE,(BpDist)
 OR A
 SBC HL,DE
 RET NC
 LD H,(IY+obPzh)
 LD L,(IY+obPzl)
 ADD HL,HL
 EX DE,HL
 LD HL,(VTz)
 ADD HL,HL
 OR A
 SBC HL,DE
 SRA H:RR L
 BIT 7,H
 CALL NZ,NegHL
 LD DE,(BpDist)
 OR A
 SBC HL,DE
 RET
MapPt PUSH BC
 PUSH DE
 LD A,D
 ADD A,64
 AND #7F
 LD D,A
 LD A,E
 ADD A,64
 AND #7F
 LD E,A
 LD A,E
 AND 7
 LD C,A
 LD B,0
 LD HL,Bits
 ADD HL,BC
 LD A,(HL)
 SLA E
 SRL D
 RR E
 SRL D
 RR E
 SRL D
 RR E
 SRL D
 RR E
 LD HL,Map
 ADD HL,DE
 POP DE
 POP BC
 RET
BpType LD HL,BumTab
 LD D,0
 LD E,(IY+obShp)
 DEC E
 ADD HL,DE
 LD A,(VFlags)
 AND (HL)
 RET NZ
 LD A,(VHFl)
 CP (IY+obHFl)
 SCF
 RET NZ
 OR A
 RET
FOS LD IX,ObList
 LD DE,obLen
FOS1 LD A,(IX)
 OR A
 RET Z
 CP #FF
 JR Z,FOS2
 ADD IX,DE
 JR FOS1
FOS2 LD (IX+obLen),#FF
 RET
MakeE LD HL,#4000
 LD IX,STab:LD C,24
MakeE1 LD B,8
MakeE2 LD (IX),L:INC IX
 LD (IX),H:INC IX:INC H
 DJNZ MakeE2:LD A,L
 ADD A,#20:LD L,A
 JR C,MakeE3:LD A,H:SUB 8
 LD H,A:MakeE3 DEC C
 JR NZ,MakeE1:RET
TranE LD IY,STab:LD B,192
LD IX,CTab:Tran1 PUSH BC
LD L,(IY):LD (IX),L
LD H,(IY+1):LD (IX+1),H
INC IY:INC IY:LD B,16
XOR A:LD C,A
Tran2 CP (HL):JR NZ,Tran4
INC C:INC L:DJNZ Tran2
LD (IX+2),32:Tran3 INC IX
INC IX:INC IX:POP BC
DJNZ Tran1:RET
Tran4 LD (IX+2),C:INC IX
INC IX:INC IX:LD A,B
ADD A,A:LD (IX),0:INC IX
LD (IX),0:INC IX
LD (IX),A:INC IX:ADD A,L
LD (IX),A:LD (IX+1),H
LD (IX+2),C:JP Tran3
INC IY
MakePylon LD B,5
 LD A,B
 LD (nObj),A
 LD HL,#880
 LD E,L
 LD D,0-60
MakePy1 LD (IX+obShp),30
 LD (IX+obPhi),0
 LD (IX+obDis),#30
 LD (IX+obMov),0
 LD (IX+obHFl),0
 LD (IX+obPxh),H
 LD (IX+obPxl),L
 LD (IX+obPzh),D
 LD (IX+obPzl),E
 PUSH HL
 PUSH DE
 LD E,D
 LD D,H
 CALL MapPt
 OR (HL)
 LD (HL),A
 LD DE,obLen
 ADD IX,DE
 LD HL,nObj
 INC (HL)
 POP DE
 POP HL
 LD A,D
 ADD A,24
 LD D,A
 DJNZ MakePy1
 LD (IX),#FF
 RET
MakeObj LD IX,ObList
 CALL MakePylon
 LD B,40
 LD A,(nObj)
 ADD A,B
 LD (nObj),A
 LD DE,obLen
MakeOb1 CALL MakeO
 ADD IX,DE
 DJNZ MakeOb1
 LD B,8
MakeOb2 CALL MakeRadar
 LD HL,nObj
 INC (HL)
 DJNZ MakeOb2
 RET
MakeO CALL MakeSpace
 CALL Rand
 AND #F
 INC A
 LD (IX+obShp),A
 LD (IX+obDis),#18
 LD (IX+obMov),0
 LD (IX+obHFl),0
 CALL Rand
 AND #C0
 LD (IX+obPhi),A
 LD (IX+obLen),#FF
 RET
MakeSpace PUSH BC
 PUSH DE
 PUSH IX
MakeS1 LD L,#80
 LD E,L
 CALL Rand:LD H,A
 CALL Rand:LD D,A
 SRA H
 SRA D
 LD (VTx),HL
 LD (VTz),DE
 LD HL,BumTabL
 LD (DisTab),HL
 LD (IX+obHFl),#FF
 CALL Bp
 JR C,MakeS1
 POP IX
 LD HL,(VTx)
 LD D,H
 LD (IX+obPxh),H
 LD (IX+obPxl),L
 LD HL,(VTz)
 LD (IX+obPzh),H
 LD (IX+obPzl),L
 LD E,H
 CALL MapPt
 OR (HL)
 LD (HL),A
 POP DE
 POP BC
 RET
MakeRadar CALL MakeSpace
 LD (IX+obShp),31
 LD (IX+obDis),24
 LD (IX+obHFl),0
 LD (IX+obMov),0
 LD (IX+obPhi),0
 LD (IX+obLen+obShp),32
 LD (IX+obLen+obDis),#18
 LD (IX+obLen+obMov),1
 LD A,(IX+obPxh)
 LD (IX+obLen+obPxh),A
 LD A,(IX+obPzh)
 LD (IX+obLen+obPzh),A
 LD DE,obLen
 ADD IX,DE
 LD (IX+obPxl),#80
 LD (IX+obPzl),#80
 LD (IX+obHFl),0
 LD (IX+obPhi),0
 LD (IX+obDis),#18
 ADD IX,DE
 LD (IX),#FF
 RET

		org $B800

SL              LD A,L                          ; B800  
                SUB E                           ; B801  
                JR NC LB805                     ; B802  

                EX DE,HL                        ; B804  
LB805           PUSH DE                         ; B805  
                PUSH HL                         ; B806  
                EX DE,HL                        ; B807  
                CALL LB873                      ; B808  
                LD DE,$0100                     ; B80B  
                EXX                             ; B80E  
                POP HL                          ; B80F  
                POP DE                          ; B810  
                LD A,L                          ; B811  
                SUB E                           ; B812  
                LD C,A                          ; B813  
                LD A,H                          ; B814  
                SUB D                           ; B815  
                JR NC LB81F                     ; B816  

                NEG                             ; B818  
                EXX                             ; B81A  
                LD DE,LFF00                     ; B81B  
                EXX                             ; B81E  
LB81F           LD B,A                          ; B81F  
                SUB C                           ; B820  
                JP NC LB84B                     ; B821  

                LD L,C                          ; B824  
                SRL L                           ; B825  
                LD A,B                          ; B827  
                NEG                             ; B828  
                LD E,A                          ; B82A  
                LD D,$FF                        ; B82B  
                JR NZ LB830                     ; B82D  

                LD D,A                          ; B82F  
LB830           XOR A                           ; B830  
                LD B,A                          ; B831  
                LD H,A                          ; B832  
                LD A,C                          ; B833  
                EXX                             ; B834  
                OR A                            ; B835  
                RET Z                           ; B836  

                LD B,A                          ; B837  
LB838           EXX                             ; B838  
                ADD HL,DE                       ; B839  
                BIT 7,H                         ; B83A  
                JR Z LB848                      ; B83C  

                ADD HL,BC                       ; B83E  
                EXX                             ; B83F  
                ADD HL,DE                       ; B840  
LB841           INC L                           ; B841  
                CALL LB873                      ; B842  
                DJNZ LB838                      ; B845  

                RET                             ; B847  

LB848           EXX                             ; B848  
                JR LB841                        ; B849  

LB84B           LD L,B                          ; B84B  
                SRL L                           ; B84C  
                LD A,C                          ; B84E  
                NEG                             ; B84F  
                LD E,A                          ; B851  
                LD D,$FF                        ; B852  
                JR NZ LB857                     ; B854  

                LD D,A                          ; B856  
LB857           LD C,B                          ; B857  
                XOR A                           ; B858  
                LD B,A                          ; B859  
                LD H,A                          ; B85A  
                LD A,C                          ; B85B  
                EXX                             ; B85C  
                OR A                            ; B85D  
                RET Z                           ; B85E  

                LD B,A                          ; B85F  
LB860           EXX                             ; B860  
                ADD HL,DE                       ; B861  
                BIT 7,H                         ; B862  
                JR Z LB870                      ; B864  

                ADD HL,BC                       ; B866  
                EXX                             ; B867  
                INC L                           ; B868  
LB869           ADD HL,DE                       ; B869  
                CALL LB873                      ; B86A  
                DJNZ LB860                      ; B86D  

                RET                             ; B86F  

LB870           EXX                             ; B870  
                JR LB869                        ; B871  

LB873           PUSH DE                         ; B873  
                EX DE,HL                        ; B874  
                CALL vPoint                     ; B875  
                OR (HL)                         ; B878  
                LD (HL),A                       ; B879  
                EX DE,HL                        ; B87A  
                POP DE                          ; B87B  
                RET                             ; B87C  

LB87D           JP (HL)                         ; B87D  

Kemp            LD A,(KFl)                      ; B87E  
                OR A                            ; B881  
                RET Z                           ; B882  

                IN A,($DF)                      ; B883  
                CP $20                          ; B885  
                RET NC                          ; B887  

                CPL                             ; B888  
                LD C,A                          ; B889  
                LD A,(kR)                       ; B88A  
                AND C                           ; B88D  
                LD (kR),A                       ; B88E  
                SRL C                           ; B891  
                LD A,(kL)                       ; B893  
                AND C                           ; B896  
                LD (kL),A                       ; B897  
                SRL C                           ; B89A  
                LD A,(kB)                       ; B89C  
                AND C                           ; B89F  
                LD (kB),A                       ; B8A0  
                SRL C                           ; B8A3  
                LD A,(kF)                       ; B8A5  
                AND C                           ; B8A8  
                LD (kF),A                       ; B8A9  
                SRL C                           ; B8AC  
                LD A,(kZap)                     ; B8AE  
                AND C                           ; B8B1  
                LD (kZap),A                     ; B8B2  
                RET                             ; B8B5  

Full            LD A,(FFl)                      ; B8B6  
                OR A                            ; B8B9  
                RET Z                           ; B8BA  

                IN A,($7F)                      ; B8BB  
                RLCA                            ; B8BD  
                LD C,A                          ; B8BE  
                LD A,(kZap)                     ; B8BF  
                AND C                           ; B8C2  
                LD (kZap),A                     ; B8C3  
                SRL C                           ; B8C6  
                LD A,(kF)                       ; B8C8  
                AND C                           ; B8CB  
                LD (kF),A                       ; B8CC  
                SRL C                           ; B8CF  
                LD A,(kB)                       ; B8D1  
                AND C                           ; B8D4  
                LD (kB),A                       ; B8D5  
                SRL C                           ; B8D8  
                LD A,(kL)                       ; B8DA  
                AND C                           ; B8DD  
                LD (kL),A                       ; B8DE  
                SRL C                           ; B8E1  
                LD A,(kR)                       ; B8E3  
                AND C                           ; B8E6  
                LD (kR),A                       ; B8E7  
                RET                             ; B8EA  

GrumSet         LD A,(FFl)                      ; B8EB  
                OR A                            ; B8EE  
                RET Z                           ; B8EF  

                LD HL,LB900                     ; B8F0  
                LD B,(HL)                       ; B8F3  
                INC HL                          ; B8F4  
LB8F5           LD A,(HL)                       ; B8F5  
                OUT ($3F),A                     ; B8F6  
                INC HL                          ; B8F8  
                LD A,(HL)                       ; B8F9  
                OUT ($5F),A                     ; B8FA  
                INC HL                          ; B8FC  
                DJNZ LB8F5                      ; B8FD  

                RET                             ; B8FF  

LB900           DEFB $09,$00,$FF,$01,$08,$06,$02,$07; B900 ........
                DEFB $F6,$08,$10,$0B,$4F,$0C,$00,$0D; B908 ....O...
                DEFB $0E,$0F,$00                ; B910 ...

Grumble         LD A,(FFl)                      ; B913  
                OR A                            ; B916  
                RET Z                           ; B917  

                LD A,(PlWSp)                    ; B918  
                LD C,A                          ; B91B  
                AND $07                         ; B91C  
                LD B,A                          ; B91E  
                LD A,C                          ; B91F  
                RLCA                            ; B920  
                RLCA                            ; B921  
                RLCA                            ; B922  
                RLCA                            ; B923  
                AND $07                         ; B924  
                ADD A,B                         ; B926  
                LD E,A                          ; B927  
                LD D,$00                        ; B928  
                LD HL,LB939                     ; B92A  
                ADD HL,DE                       ; B92D  
                XOR A                           ; B92E  
                OUT ($3F),A                     ; B92F  
                LD A,(HL)                       ; B931  
                OUT ($5F),A                     ; B932  
                LD A,$0F                        ; B934  
                OUT ($3F),A                     ; B936  
                RET                             ; B938  

LB939           DEFB $FF,$F0,$E0,$D0,$B8,$A0,$80,$70; B939 .......p
                DEFB $60,$50,$40,$30,$20,$10,$00; B941 `P@0 ..

KillFull        LD A,$07                        ; B948  
                OUT ($3F),A                     ; B94A  
                LD A,$FF                        ; B94C  
                OUT ($5F),A                     ; B94E  
                LD A,$08                        ; B950  
                OUT ($3F),A                     ; B952  
                XOR A                           ; B954  
                OUT ($5F),A                     ; B955  
                LD A,$09                        ; B957  
                OUT ($3F),A                     ; B959  
                XOR A                           ; B95B  
                OUT ($5F),A                     ; B95C  
                LD A,$0A                        ; B95E  
                OUT ($3F),A                     ; B960  
                XOR A                           ; B962  
                OUT ($5F),A                     ; B963  
                LD A,$0F                        ; B965  
                OUT ($3F),A                     ; B967  
                RET                             ; B969  

DoBonks         LD A,(BonkFlg)                  ; B96A  
                OR A                            ; B96D  
                RET Z                           ; B96E  

                JP L6724                        ; B96F  

MvObj           LD IX,L7AF0                     ; B972  
LB976           LD A,(IX)                       ; B976  
                CP $FF                          ; B979  
                RET Z                           ; B97B  

                OR A                            ; B97C  
                JR Z LB998                      ; B97D  

                LD A,(IX+9)                     ; B97F  
                OR A                            ; B982  
                JR Z LB998                      ; B983  

                ADD A,A                         ; B985  
                LD E,A                          ; B986  
                LD D,$00                        ; B987  
                LD HL,LB9A0                     ; B989  
                ADD HL,DE                       ; B98C  
                LD A,(HL)                       ; B98D  
                INC HL                          ; B98E  
                LD H,(HL)                       ; B98F  
                LD L,A                          ; B990  
                PUSH IX                         ; B991  
                CALL LB87D                      ; B993  
                POP IX                          ; B996  
LB998           LD DE,$0010                     ; B998  
                ADD IX,DE                       ; B99B  
                JP LB976                        ; B99D  

LB9A0           DEFW LB9B6,LB9AE,LB9AE,LB9B7,LBC4F,LBADA,LBABD; B9A0 

LB9AE           LD A,(IX+1)                     ; B9AE  
                ADD A,$0C                       ; B9B1  
                LD (IX+1),A                     ; B9B3  
LB9B6           RET                             ; B9B6  

LB9B7           DEC (IX+11)                     ; B9B7  
                JR Z LBA17                      ; B9BA  

                LD HL,$0033                     ; B9BC  
                LD (Vtor),HL                    ; B9BF  
                LD A,(IX+1)                     ; B9C2  
                LD (VPhi),A                     ; B9C5  
                LD A,$0D                        ; B9C8  
                LD (VN),A                       ; B9CA  
                LD A,$03                        ; B9CD  
                LD (VFlags),A                   ; B9CF  
                LD H,(IX+3)                     ; B9D2  
                LD L,(IX+2)                     ; B9D5  
                LD (VPx),HL                     ; B9D8  
                LD H,(IX+7)                     ; B9DB  
                LD L,(IX+6)                     ; B9DE  
                LD (VPz),HL                     ; B9E1  
                LD HL,BumTabS                   ; B9E4  
                LD (DisTab),HL                  ; B9E7  
                LD A,(IX+10)                    ; B9EA  
                LD (VHFl),A                     ; B9ED  
                CALL L6775                      ; B9F0  
                LD HL,(VPx)                     ; B9F3  
                LD (IX+3),H                     ; B9F6  
                LD (IX+2),L                     ; B9F9  
                LD HL,(VPz)                     ; B9FC  
                LD (IX+7),H                     ; B9FF  
                LD (IX+6),L                     ; BA02  
                LD A,(VFlags)                   ; BA05  
                RLA                             ; BA08  
                RET NC                          ; BA09  

                LD C,(IX)                       ; BA0A  
                LD (IX),$00                     ; BA0D  
                LD HL,nObj                      ; BA11  
                DEC (HL)                        ; BA14  
                JR LBA20                        ; BA15  

LBA17           LD (IX),$00                     ; BA17  
                LD HL,nObj                      ; BA1B  
                DEC (HL)                        ; BA1E  
                RET                             ; BA1F  

LBA20           LD A,(IY)                       ; BA20  
                SUB $11                         ; BA23  
                RET C                           ; BA25  

                ADD A,A                         ; BA26  
                LD HL,LBA33                     ; BA27  
                LD E,A                          ; BA2A  
                LD D,$00                        ; BA2B  
                ADD HL,DE                       ; BA2D  
                LD A,(HL)                       ; BA2E  
                INC HL                          ; BA2F  
                LD H,(HL)                       ; BA30  
                LD L,A                          ; BA31  
                JP (HL)                         ; BA32  

LBA33           DEFW LBA59,LBA75,LBA58,LBA57,LBA57,LBA57,LBAAF,LBA56; BA33 
                DEFW LBA56,LBA56,LBA56,LBA56,LBA56,LBA55,LBA54,LBA53; BA43 

LBA53           RET                             ; BA53  

LBA54           RET                             ; BA54  

LBA55           RET                             ; BA55  

LBA56           RET                             ; BA56  

LBA57           RET                             ; BA57  

LBA58           RET                             ; BA58  

LBA59           LD A,C                          ; BA59  
                CP $16                          ; BA5A  
                JR NZ LBA64                     ; BA5C  

                LD DE,$000A                     ; BA5E  
                CALL LBAB5                      ; BA61  
LBA64           PUSH IY                         ; BA64  
                POP IX                          ; BA66  
                LD HL,THF                       ; BA68  
                LD L,(IX+10)                    ; BA6B  
                LD (HL),$00                     ; BA6E  
                CALL RTk                        ; BA70  
                JR LBA8F                        ; BA73  

LBA75           LD A,C                          ; BA75  
                CP $16                          ; BA76  
                JR NZ LBA80                     ; BA78  

                LD DE,$0019                     ; BA7A  
                CALL LBAB5                      ; BA7D  
LBA80           PUSH IY                         ; BA80  
                POP IX                          ; BA82  
                LD HL,THF                       ; BA84  
                LD L,(IX+10)                    ; BA87  
                LD (HL),$00                     ; BA8A  
                CALL RTk                        ; BA8C  
LBA8F           LD (IX),$18                     ; BA8F  
                LD (IX+9),$06                   ; BA93  
                LD A,(IX+4)                     ; BA97  
                LD C,(IX+1)                     ; BA9A  
                SUB C                           ; BA9D  
                ADD A,$20                       ; BA9E  
                AND $C0                         ; BAA0  
                ADD A,C                         ; BAA2  
                LD (IX+1),A                     ; BAA3  
                LD (IX+10),$00                  ; BAA6  
                LD (IX+11),$0A                  ; BAAA  
                RET                             ; BAAE  

LBAAF           LD A,$01                        ; BAAF  
                LD (DFlg),A                     ; BAB1  
                RET                             ; BAB4  

LBAB5           LD HL,(FCount)                  ; BAB5  
                ADD HL,DE                       ; BAB8  
                LD (FCount),HL                  ; BAB9  
                RET                             ; BABC  

LBABD           DEC (IX+11)                     ; BABD  
                RET NZ                          ; BAC0  

                LD (IX),$00                     ; BAC1  
                LD HL,DTk                       ; BAC5  
                INC (HL)                        ; BAC8  
                LD HL,nObj                      ; BAC9  
                DEC (HL)                        ; BACC  
                LD D,(IX+3)                     ; BACD  
                LD E,(IX+7)                     ; BAD0  
                CALL L6781                      ; BAD3  
                CPL                             ; BAD6  
                AND (HL)                        ; BAD7  
                LD (HL),A                       ; BAD8  
                RET                             ; BAD9  

LBADA           CALL RTk                        ; BADA  
                PUSH IX                         ; BADD  
                POP IY                          ; BADF  
                LD (L6115),IY                   ; BAE1  
                LD HL,L6124                     ; BAE5  
                DEC (HL)                        ; BAE8  
                JR NZ LBAFB                     ; BAE9  

                LD (HL),$2A                     ; BAEB  
                LD HL,L611D                     ; BAED  
                LD DE,L611C                     ; BAF0  
                LD BC,$0007                     ; BAF3  
                LDIR                            ; BAF6  
                LD A,$06                        ; BAF8  
                LD (DE),A                       ; BAFA  
LBAFB           LD A,(L6119)                    ; BAFB  
                OR A                            ; BAFE  
                JP Z LBC25                      ; BAFF  

                DEC A                           ; BB02  
                LD (L6119),A                    ; BB03  
                LD A,(L6118)                    ; BB06  
                AND $07                         ; BB09  
                ADD A,A                         ; BB0B  
                LD L,A                          ; BB0C  
                LD H,$00                        ; BB0D  
                LD DE,LBB18                     ; BB0F  
                ADD HL,DE                       ; BB12  
                LD A,(HL)                       ; BB13  
                INC HL                          ; BB14  
                LD H,(HL)                       ; BB15  
                LD L,A                          ; BB16  
                JP (HL)                         ; BB17  

LBB18           DEFW LBB28,LBB31,LBB3A,LBB43,LBB4C,LBB55,LBB55,LBB28

LBB28           LD DE,$0000                     ; BB28  
                LD HL,$0000                     ; BB2B  
                JP LBBEA                        ; BB2E  

LBB31           LD DE,$0000                     ; BB31  
                LD HL,$0001                     ; BB34  
                JP LBBEA                        ; BB37  

LBB3A           LD DE,$0000                     ; BB3A  
                LD HL,$0100                     ; BB3D  
                JP LBBEA                        ; BB40  

LBB43           LD DE,$0001                     ; BB43  
                LD HL,$0000                     ; BB46  
                JP LBBEA                        ; BB49  

LBB4C           LD DE,$0100                     ; BB4C  
                LD HL,$0000                     ; BB4F  
                JP LBBEA                        ; BB52  

LBB55           LD A,(IX+4)                     ; BB55  
                SUB (IX+1)                      ; BB58  
                LD D,A                          ; BB5B  
                JP P LBB61                      ; BB5C  

                NEG                             ; BB5F  
LBB61           PUSH AF                         ; BB61  
                CP $03                          ; BB62  
                JR C LBB6D                      ; BB64  

                RLC D                           ; BB66  
                CCF                             ; BB68  
                RL E                            ; BB69  
                JR LBB70                        ; BB6B  

LBB6D           LD DE,$0000                     ; BB6D  
LBB70           LD L,$03                        ; BB70  
                CALL L6793                      ; BB72  
                POP AF                          ; BB75  
                CP $08                          ; BB76  
                JP NC LBB88                     ; BB78  

                LD A,(L6118)                    ; BB7B  
                CP $06                          ; BB7E  
                JR NZ LBB88                     ; BB80  

                LD DE,$0100                     ; BB82  
                JP LBB8B                        ; BB85  

LBB88           LD DE,$0000                     ; BB88  
LBB8B           LD L,$04                        ; BB8B  
                CALL L6796                      ; BB8D  
                JP C LBC25                      ; BB90  

                CALL LBCFB                      ; BB93  
                LD IY,PlShp                     ; BB96  
                CALL L67A5                      ; BB9A  
                LD (IX+4),A                     ; BB9D  
                JR C LBBB5                      ; BBA0  

                XOR $80                         ; BBA2  
                SUB (IY+1)                      ; BBA4  
                JP P LBBAC                      ; BBA7  

                NEG                             ; BBAA  
LBBAC           CP $07                          ; BBAC  
                JR NC LBBB5                     ; BBAE  

                LD A,$01                        ; BBB0  
                LD (Aim),A                      ; BBB2  
LBBB5           LD IY,(L6115)                   ; BBB5  
                LD A,(IY+15)                    ; BBB9  
                OR A                            ; BBBC  
                JR Z LBBDD                      ; BBBD  

                LD A,(IY+4)                     ; BBBF  
                SUB (IY+1)                      ; BBC2  
                JP P LBBCA                      ; BBC5  

                NEG                             ; BBC8  
LBBCA           CP $03                          ; BBCA  
                JR NC LBBDD                     ; BBCC  

                CALL vRn                        ; BBCE  
                LD E,A                          ; BBD1  
                LD A,(L6117)                    ; BBD2  
                CP E                            ; BBD5  
                JR C LBBDD                      ; BBD6  

                LD E,$00                        ; BBD8  
                JP LBBDF                        ; BBDA  

LBBDD           LD E,$01                        ; BBDD  
LBBDF           LD H,$14                        ; BBDF  
                LD L,$05                        ; BBE1  
                CALL L6799                      ; BBE3  
                CALL C L6727                    ; BBE6  
                RET                             ; BBE9  

LBBEA           PUSH HL                         ; BBEA  
                LD L,$03                        ; BBEB  
                CALL L6793                      ; BBED  
                POP DE                          ; BBF0  
                LD L,$03                        ; BBF1  
                CALL L6796                      ; BBF3  
                JP C LBC47                      ; BBF6  

                LD E,$01                        ; BBF9  
                CALL L6799                      ; BBFB  
                LD IY,PlShp                     ; BBFE  
                CALL L67A5                      ; BC02  
                LD (IX+4),A                     ; BC05  
                JR C LBC1D                      ; BC08  

                XOR $80                         ; BC0A  
                SUB (IY+1)                      ; BC0C  
                JP P LBC14                      ; BC0F  

                NEG                             ; BC12  
LBC14           CP $07                          ; BC14  
                JR NC LBC1D                     ; BC16  

                LD A,$01                        ; BC18  
                LD (Aim),A                      ; BC1A  
LBC1D           LD IY,(L6115)                   ; BC1D  
                CALL LBCFB                      ; BC21  
                RET                             ; BC24  

LBC25           JR C LBC47                      ; BC25  

                CALL vRn                        ; BC27  
                AND $07                         ; BC2A  
                LD E,A                          ; BC2C  
                LD D,$00                        ; BC2D  
                LD HL,L611C                     ; BC2F  
                ADD HL,DE                       ; BC32  
                LD A,(HL)                       ; BC33  
LBC34           LD (L6118),A                    ; BC34  
                CALL vRn                        ; BC37  
                AND $3F                         ; BC3A  
                LD (L6119),A                    ; BC3C  
                LD DE,$0000                     ; BC3F  
                LD HL,$0000                     ; BC42  
                JR LBBEA                        ; BC45  

LBC47           LD A,(L6118)                    ; BC47  
                AND $01                         ; BC4A  
                INC A                           ; BC4C  
                JR LBC34                        ; BC4D  

LBC4F           CALL RTk                        ; BC4F  
                PUSH IX                         ; BC52  
                POP IY                          ; BC54  
                LD (L6115),IY                   ; BC56  
                LD DE,$0000                     ; BC5A  
                LD A,(IX+4)                     ; BC5D  
                SUB (IX+1)                      ; BC60  
                PUSH AF                         ; BC63  
                RLCA                            ; BC64  
                RR D                            ; BC65  
                RLC D                           ; BC67  
                CCF                             ; BC69  
                RL E                            ; BC6A  
                LD L,$03                        ; BC6C  
                CALL L6793                      ; BC6E  
                POP AF                          ; BC71  
                JP P LBC77                      ; BC72  

                NEG                             ; BC75  
LBC77           CP $0A                          ; BC77  
                LD DE,$0000                     ; BC79  
                RL D                            ; BC7C  
                LD A,(IX+5)                     ; BC7E  
                OR A                            ; BC81  
                JR Z LBC8A                      ; BC82  

                DEC (IX+5)                      ; BC84  
                LD DE,$0001                     ; BC87  
LBC8A           LD L,$06                        ; BC8A  
                CALL L6796                      ; BC8C  
                JR NC LBC9F                     ; BC8F  

                LD A,(IX+5)                     ; BC91  
                OR A                            ; BC94  
                LD (IX+5),$07                   ; BC95  
                JR Z LBC9F                      ; BC99  

                LD (IX+5),$00                   ; BC9B  
LBC9F           CALL LBCFB                      ; BC9F  
                LD IY,PlShp                     ; BCA2  
                CALL L67A5                      ; BCA6  
                LD (IX+4),A                     ; BCA9  
                JR C LBCC1                      ; BCAC  

                XOR $80                         ; BCAE  
                SUB (IY+1)                      ; BCB0  
                JP P LBCB8                      ; BCB3  

                NEG                             ; BCB6  
LBCB8           CP $07                          ; BCB8  
                JR NC LBCC1                     ; BCBA  

                LD A,$01                        ; BCBC  
                LD (Aim),A                      ; BCBE  
LBCC1           LD IY,(L6115)                   ; BCC1  
                LD A,(IY+15)                    ; BCC5  
                OR A                            ; BCC8  
                LD IY,(L6115)                   ; BCC9  
                JR Z LBCE2                      ; BCCD  

                LD A,(IY+4)                     ; BCCF  
                SUB (IY+1)                      ; BCD2  
                JP P LBCDA                      ; BCD5  

                NEG                             ; BCD8  
LBCDA           CP $03                          ; BCDA  
                JR NC LBCE2                     ; BCDC  

                LD E,$00                        ; BCDE  
                JR LBCE4                        ; BCE0  

LBCE2           LD E,$01                        ; BCE2  
LBCE4           LD H,$15                        ; BCE4  
                LD L,$05                        ; BCE6  
                CALL L6799                      ; BCE8  
                CALL C L6727                    ; BCEB  
                RET                             ; BCEE  

RTk             LD A,(IX+13)                    ; BCEF  
                LD L,(IX+14)                    ; BCF2  
                LD H,(IX+15)                    ; BCF5  
                XOR (HL)                        ; BCF8  
                LD (HL),A                       ; BCF9  
                RET                             ; BCFA  

LBCFB           LD H,(IX+3)                     ; BCFB  
                LD L,(IX+2)                     ; BCFE  
                LD DE,(PlPx)                    ; BD01  
                ADD HL,HL                       ; BD05  
                SLA E                           ; BD06  
                RL D                            ; BD08  
                OR A                            ; BD0A  
                SBC HL,DE                       ; BD0B  
                SRA H                           ; BD0D  
                RR L                            ; BD0F  
                LD (L6108),HL                   ; BD11  
                LD A,(PlPhi)                    ; BD14  
                CALL L6709                      ; BD17  
                LD A,B                          ; BD1A  
                LD (L610E),BC                   ; BD1B  
                OR A                            ; BD1F  
                CALL NZ L670C                   ; BD20  
                RR C                            ; BD23  
                CALL C vNegHL                   ; BD25  
                PUSH HL                         ; BD28  
                LD H,(IX+7)                     ; BD29  
                LD L,(IX+6)                     ; BD2C  
                LD DE,(PlPz)                    ; BD2F  
                ADD HL,HL                       ; BD33  
                SLA E                           ; BD34  
                RL D                            ; BD36  
                OR A                            ; BD38  
                SBC HL,DE                       ; BD39  
                SRA H                           ; BD3B  
                RR L                            ; BD3D  
                LD (L610A),HL                   ; BD3F  
                LD A,(PlPhi)                    ; BD42  
                CALL L6706                      ; BD45  
                LD A,B                          ; BD48  
                LD (L610C),BC                   ; BD49  
                OR A                            ; BD4D  
                CALL NZ L670C                   ; BD4E  
                RR C                            ; BD51  
                CALL NC vNegHL                  ; BD53  
                POP DE                          ; BD56  
                ADD HL,DE                       ; BD57  
                LD (L6104),HL                   ; BD58  
                LD HL,(L610A)                   ; BD5B  
                LD BC,(L610E)                   ; BD5E  
                LD A,B                          ; BD62  
                OR A                            ; BD63  
                CALL NZ L670C                   ; BD64  
                RR C                            ; BD67  
                CALL NC vNegHL                  ; BD69  
                PUSH HL                         ; BD6C  
                LD HL,(L6108)                   ; BD6D  
                LD BC,(L610C)                   ; BD70  
                LD A,B                          ; BD74  
                OR A                            ; BD75  
                CALL NZ L670C                   ; BD76  
                RR C                            ; BD79  
                CALL NC vNegHL                  ; BD7B  
                POP DE                          ; BD7E  
                ADD HL,DE                       ; BD7F  
                LD (L6106),HL                   ; BD80  
                XOR A                           ; BD83  
                SRA H                           ; BD84  
                ADC A,H                         ; BD86  
                CALL L679C                      ; BD87  
                EX DE,HL                        ; BD8A  
                LD A,(L6105)                    ; BD8B  
                SRA A                           ; BD8E  
                ADC A,$00                       ; BD90  
                CALL L679C                      ; BD92  
                ADD HL,DE                       ; BD95  
                LD DE,$0200                     ; BD96  
                OR A                            ; BD99  
                SBC HL,DE                       ; BD9A  
                JR NC LBDBD                     ; BD9C  

                LD A,(L6107)                    ; BD9E  
                SRA A                           ; BDA1  
                ADC A,$18                       ; BDA3  
                LD D,A                          ; BDA5  
                LD A,(L6105)                    ; BDA6  
                SRA A                           ; BDA9  
                ADC A,$80                       ; BDAB  
                LD E,A                          ; BDAD  
                CALL vPoint                     ; BDAE  
                LD (IX+13),A                    ; BDB1  
LBDB2           EQU *-2                         ;
                LD (IX+14),L                    ; BDB4  
                LD (IX+15),H                    ; BDB7  
                XOR (HL)                        ; BDBA  
                LD (HL),A                       ; BDBB  
LBDBC           RET                             ; BDBC  

LBDBD           LD (IX+15),$00                  ; BDBD  
                RET                             ; BDC1  

InPl            LD HL,PlShp                     ; BDC2  
                LD DE,PlPhi                     ; BDC5  
                LD BC,$000F                     ; BDC8  
                LD (HL),$00                     ; BDCB  
                LDIR                            ; BDCD  
                LD IX,PlShp                     ; BDCF  
                CALL L6790                      ; BDD3  
                LD (IX),$17                     ; BDD6  
                CALL L67A8                      ; BDDA  
                LD (IX+10),A                    ; BDDD  
                LD (IX+11),$00                  ; BDE0  
                LD (IX+12),$00                  ; BDE4  
                RET                             ; BDE8  

INTk            LD HL,TkN                       ; BDE9  
                INC (HL)                        ; BDEC  
                JP Z LBE73                      ; BDED  

                LD A,(HL)                       ; BDF0  
                CP $0B                          ; BDF1  
                JR NC LBE25                     ; BDF3  

                CP $04                          ; BDF5  
                JR C LBDFB                      ; BDF7  

                LD A,$04                        ; BDF9  
LBDFB           DEC A                           ; BDFB  
                ADD A,A                         ; BDFC  
                LD E,A                          ; BDFD  
                LD D,$00                        ; BDFE  
                LD HL,LBE75                     ; BE00  
                ADD HL,DE                       ; BE03  
                LD E,(HL)                       ; BE04  
                INC HL                          ; BE05  
                LD D,(HL)                       ; BE06  
                EX DE,HL                        ; BE07  
                LD DE,L611C                     ; BE08  
                LD BC,$0008                     ; BE0B  
                LDIR                            ; BE0E  
                LD HL,L6124                     ; BE10  
                LD (HL),$2A                     ; BE13  
                CALL L6784                      ; BE15  
                CALL L6790                      ; BE18  
                LD (IX),$11                     ; BE1B  
                LD (IX+9),$05                   ; BE1F  
                JR LBE4E                        ; BE23  

LBE25           CP $1A                          ; BE25  
                JR Z LBE49                      ; BE27  

                CP $38                          ; BE29  
                JR Z LBE49                      ; BE2B  

                CP $65                          ; BE2D  
                JR Z LBE49                      ; BE2F  

                CP $97                          ; BE31  
                JR Z LBE49                      ; BE33  

                CP $D3                          ; BE35  
                JR Z LBE49                      ; BE37  

LBE39           CALL L6784                      ; BE39  
                CALL L6790                      ; BE3C  
                LD (IX),$12                     ; BE3F  
                LD (IX+9),$04                   ; BE43  
                JR LBE4E                        ; BE47  

LBE49           CALL LBE39                      ; BE49  
                JR LBE39                        ; BE4C  

LBE4E           CALL vRn                        ; BE4E  
                LD (IX+1),A                     ; BE51  
                CALL L67A8                      ; BE54  
                LD (IX+10),A                    ; BE57  
                LD (IX+8),$18                   ; BE5A  
                LD (IX+11),$00                  ; BE5E  
                LD (IX+12),$00                  ; BE62  
                LD (IX+13),$00                  ; BE66  
                CALL LBCFB                      ; BE6A  
                LD HL,nObj                      ; BE6D  
                INC (HL)                        ; BE70  
                OR A                            ; BE71  
                RET                             ; BE72  

LBE73           SCF                             ; BE73  
                RET                             ; BE74  


Scrn2 EQU #C000

                ORG $CA00                       ; 0000 
MtnBuff         DEFS $0200,$00                  ; CA00 

                ORG $D800                       ; 0000 
STab		equ *
YTable          DEFW $4000,$4100,$4200,$4300,$4400,$4500,$4600,$4700; D800 
                DEFW $4020,$4120,$4220,$4320,$4420,$4520,$4620,$4720; D810 
                DEFW $4040,$4140,$4240,$4340,$4440,$4540,$4640,$4740; D820 
                DEFW $4060,$4160,$4260,$4360,$4460,$4560,$4660,$4760; D830 
                DEFW $4080,$4180,$4280,$4380,$4480,$4580,$4680,$4780; D840 
                DEFW $40A0,$41A0,$42A0,$43A0,$44A0,$45A0,$46A0,$47A0; D850 
                DEFW $40C0,$41C0,$42C0,$43C0,$44C0,$45C0,$46C0,$47C0; D860 
                DEFW $40E0,$41E0,$42E0,$43E0,$44E0,$45E0,$46E0,$47E0; D870 
                DEFW $4800,$4900,$4A00,$4B00,$4C00,$4D00,$4E00,$4F00; D880 
                DEFW $4820,$4920,$4A20,$4B20,$4C20,$4D20,$4E20,$4F20; D890 
LD8A0           DEFW $4840,$4940,$4A40,$4B40,$4C40,$4D40,$4E40,$4F40; D8A0 
                DEFW $4860,$4960,$4A60,$4B60,$4C60,$4D60,$4E60,$4F60; D8B0 
                DEFW $4880,$4980,$4A80,$4B80,$4C80,$4D80,$4E80,$4F80; D8C0 
                DEFW $48A0,$49A0,$4AA0,$4BA0,$4CA0,$4DA0,$4EA0,$4FA0; D8D0 
                DEFW $48C0,$49C0,$4AC0,$4BC0,$4CC0,$4DC0,$4EC0,$4FC0; D8E0 
                DEFW $48E0,$49E0,$4AE0,$4BE0,$4CE0,$4DE0,$4EE0,$4FE0; D8F0 
                DEFW $5000,$5100,$5200,$5300,$5400,$5500,$5600,$5700; D900 
                DEFW $5020,$5120,$5220,$5320,$5420,$5520,$5620,$5720; D910 
                DEFW $5040,$5140,$5240,$5340,$5440,$5540,$5640,$5740; D920 
                DEFW $5060,$5160,$5260,$5360,$5460,$5560,$5660,$5760; D930 
                DEFW $5080,$5180,$5280,$5380,$5480,$5580,$5680,$5780; D940 
                DEFW $50A0,$51A0,$52A0,$53A0,$54A0,$55A0,$56A0,$57A0; D950 
                DEFW $50C0,$51C0,$52C0,$53C0,$54C0,$55C0,$56C0,$57C0; D960 
                DEFW $50E0,$51E0,$52E0,$53E0,$54E0,$55E0,$56E0,$57E0; D970 
CTab            DEFW $4000,$000F,$0200,$4011,$000F,$0E41,$0000,$1204; D980 
                DEFW $0E41,$4200,$000E,$0400,$4212,$000E,$0E43,$0000; D990 

(*
ScreenBase      EQU $4000                       ;
ScreenBase1     EQU $4001                       ;
Attrs           EQU $5800                       ;
Mtns            EQU $9000                       ;
PlPhi           EQU $7801                       ;
IntLinT         EQU $6D20                       ;
Bits            EQU $6B64                       ;
DPLT            EQU $6E92                       ;
DPMCT           EQU $6F80                       ;
DPMPT           EQU $6F48                       ;
DPPT            EQU $6EC4                       ;
DPMT            EQU $6FA4                       ;
InCt            EQU $FFFE                       ;
ShpV            EQU $6800                       ;
BumTabL         EQU $6880                       ;
BumTabS         EQU $68C0                       ;
BumTab          EQU $6900                       ;
AtnT            EQU $6C92                       ;
Map             EQU $7000                       ;
PlShp           EQU $7800                       ;
PlPx            EQU $7802                       ;
PlPz            EQU $7806                       ;
PlDis           EQU $7808                       ;
PlMov           EQU $7809                       ;
PlHFl           EQU $780A                       ;
PlWSp           EQU $780B                       ;
ObList          EQU $7810                       ;
SL              EQU $B800                       ;
INTk            EQU $BDE9                       ;
InPl            EQU $BDC2                       ;
DoBonks         EQU $B96A                       ;
KillFull        EQU $B948                       ;
Grumble         EQU $B913                       ;
GrumSet         EQU $B8EB                       ;
Full            EQU $B8B6                       ;
Kemp            EQU $B87E                       ;
MvObj           EQU $B972                       ;
RTk             EQU $BCEF                       ;
EOO             EQU $AFAF                       ;
Scrn2           EQU $C000                       ;
L7001           EQU $7001                       ;
L7A20           EQU $7A20                       ;
L7E00           EQU $7E00                       ;
L7FFF           EQU $7FFF                       ;
L8600           EQU $8600                       ;
L8609           EQU $8609                       ;
L860A           EQU $860A                       ;
L9B20           EQU $9B20                       ;
LA01C           EQU $A01C                       ;
LA0C4           EQU $A0C4                       ;
LA0D3           EQU $A0D3                       ;
LA0E1           EQU $A0E1                       ;
LA0EF           EQU $A0EF                       ;
LA0FD           EQU $A0FD                       ;
LB9B7           EQU $B9B7                       ;
LBDB2           EQU $BDB2                       ;
LBDBC           EQU $BDBC                       ;
LC001           EQU $C001                       ;
LC018           EQU $C018                       ;
LC610           EQU $C610                       ;
LC700           EQU $C700                       ;
LC70B           EQU $C70B                       ;
LC715           EQU $C715                       ;
LCC00           EQU $CC00                       ;
LCC01           EQU $CC01                       ;
LD000           EQU $D000                       ;
LD10B           EQU $D10B                       ;
LD110           EQU $D110                       ;
LD115           EQU $D115                       ;
LDE00           EQU $DE00                       ;
LE8FE           EQU $E8FE                       ;
LEFFE           EQU $EFFE                       ;
LF7FE           EQU $F7FE                       ;
LF8FE           EQU $F8FE                       ;
LFEFE           EQU $FEFE                       ;
LFF80           EQU $FF80                       ;
LFFE0           EQU $FFE0                       ;
LFFF0           EQU $FFF0                       ;
*)

	export_sym "",$200