If you appreciate the work done within the wiki, please consider supporting The Cutting Room Floor on Patreon. Thanks for all your support!

Pinball Power (Amstrad CPC)

From The Cutting Room Floor
Jump to navigation Jump to search

Title Screen

Pinball Power

Developer: ActivMagic
Publisher: Mastertronic
Platform: Amstrad CPC
Released in EU: 1989


SourceIcon.png This game has uncompiled source code.


Source Code Fragment

A few sections of the code are left in the game. The code seen below can be seen with a hex editor at the hex addresses listed below in the .dsk dump of the game.

662B:

        LD	A,(MUB)
        CP	15
        CALL	Z,CRTB2
        CP	1
        CALL	Z,CRTB2
        LD	A,(MUB)
        DEC	A
        LD	(MUB),A
        RET
CRTB1:  LD	A,34
        CALL	#90C2
        LD	A,35
        JP	#90C2
CRTB2:  LD	A,32
        CALL	#90C2
        LD	A,33
        JP	#90C2
BUMP1:  LD	A,15
        LD	A,1
        CALL	ADBON
        LD	A,10
        JP	#648F
INLA2:  LD	A,(INLAN)
        BIT	1,A
        RET	Z
        RES	1,A
        SET	6,A
        LD	(INLAN),A
        LD	A,1
        CALL	ADBON
        LD	A,10
        JP	#648F
BEL1:   LD	A,(BL1)
        AND	A
        RET	NZ
        LD	A,5
        LD	(BL1),A
        LD	DE,1
        CALL	ADSCO
        LD	A,1
        JP	#648F
BEL2:   LD	A,(BL2)
        AND	A
        RET	NZ
        LD	A,5
        LD	(BL2),A
        LD	DE,1
        CALL	ADSCO
        LD	A,2
        JP	#648F
BEL3:   LD	A,(BL3)
        AND	A
        RET	NZ
        LD	A,5
        LD	(BL3),A
        LD	DE,1
        CALL	ADSCO
        LD	A,3
        JP	#648F
CRTHAR: LD	A,(HAR)
        DEC	A
        LD	(HAR),A
        JR	Z,C
		LD	(BUM),A
        LD	A,4
        JP	#648F
BUMP2:  LD	A,15
        LD	(MUB),A
        LD	A,4
        JP	#648F
CRBUM:  LD	A,(BUM)
        CP	15
        CALL	Z,CRTB1
        CP	1
        CALL	Z,CRTB1
        LD	A,(BUM)
        DEC	A
        LD	(BUM),A
        RET
OGAT:   LD	A,1
        LD	(GAT),A
        LD	A,15
        JP	#648F
CGAT:   LD	A,20
        LD	(GAT),A
        LD	A,15
        JP	#648F
OHP:    LD	A,30
        RET
OHS:    LD	A,95
        RET
REVOL:  LD	A,(VELY)
        SRL	A
        SRL	A
        SRL	A
        LD	B,A
        LD	A,(#741E)
        AND	A
        JR	NZ,RTU
        LD	A,B
        LD	(REV),A
        CP	4
        CALL	NC,OGAT
        RET
RTU:    LD	A,B
        LD	(VER),A
        CP	4
        CALL	NC,OGAT
        RE
        AND	1
        RET	Z
CH:     LD	A,31
        JP	#90C2
ADSCO:LD	HL,(SCOR)
        ADD	HL,DE
        LD	(SCOR),HL
        LD	DE,#C000+3703
        JP	#5B6B
SCOR:DEFW	0
BL1:DEFB	0
BL2:DEFB	0
BL3:DEFB	0
HAR:DEFB	0
ALAN:DEFB	0
LAN:DEFB	0
SLAN:DEFB	0
PRB:    LD	A,(#5922)
        CP	1
        RET	NZ
        LD	A,(#5923)
        CP	1
        RET	NZ
        LD	A,(LAN)
        AND	A
        BIT	2,A
        JR	Z,SCV
        SCF
SCV:    RLA
        AND	%111
        LD	(LAN),A
        RET
ALAS:   XOR	A
        LD	(LAN),A
        LD	(SLAN),A
        RET
ALLLA:  DEC	A
        LD	(ALAN),A
        JR	Z,ALAS
        AND	%11
        RET	NZ
        LD	A,(LAN)
        CALL	CLAN
        T
        INTER:LD	(STACK),SP
        LD	SP,NST+24
        PUSH	HL
        PUSH	DE
        PUSH	BC
        PUSH	AF
        LD	B,#F5
        IN	A,(C)
        RRA
        JR	NC,I2
        LD	A,(MIS)
        DEC	A
        LD	(MIS),A
        CALL	Z,PONA
        CALL	NZ,#538E
        LD	A,16
        CALL	#9000
        JR	NZ,I2
EXIT:   LD	SP,(SSTACK)
        JP	END
I2:     LD	A,(#5887)
        INC	A
        LD	(#5887),A
        POP	AF
        POP	BC
        POP	DE
        POP	HL
        LD	SP,(STACK)
        EI
        RET
TARGET: LD	A,1
        LD

66F0:

        RET
CRTLAN: LD  A,(ALAN)

8065:

LD	B,17
JP	Z,BEFE
INC	B
CP	125
JP	Z,BEFE
INC