We just released a Feb. 5 '89 prototype of DuckTales for the NES!
If you'd like to support our preservation efforts (and this wasn't cheap), please consider donating or supporting us on Patreon. Thank you!
If you'd like to support our preservation efforts (and this wasn't cheap), please consider donating or supporting us on Patreon. Thank you!
Hyper Space
Jump to navigation
Jump to search
| Hyper Space |
|---|
|
Publisher:
Hartung
|
Source Code
A large chunk of source code exists in the ROM, starting at 0x4380:
B,(ROMPT+1)
MOVCM SHIN,00H
;SUB-INDEX=0
MOVCM SHNO,WPI
;SET SHAPE = WEAK POINT
LXI H,ZN
;GET THE LOCATION
LDAX H+B
;YX
ANI A,00FH
SLL A
SLL A
SLL A
SLL A
ADI A,02H
MOV (SHX),A
;SET X
LDAX H+B
SLR A
SLR A
SLR A
SLR A
MOV (SHY1),A
;SET Y
MOVCM SHY2,00H
;NO OFFSET
CALL DSHAPE
;DRAW IT
MOV B,(ROMPT+1)
ZO_6:
DCR B
JMP ZO_2
MVI A,010H
;DELAY A WHILE
CALL DELAY
CALL STROBE
MVI A,002H
;WAIT FOR A ZOOM KEY
CALL WKEY
CALL STROBE
POP D
POP B
POP V
MOV (ROOM),A
MOV (BOYR),B
MOV (BOYX),C
MOV (BOYY),D
MOV (BOYS),E
CALL DW_MZ
CALL DBOY
RET
;------------------------------------------------------------------------------ ;
FIRE ;
INPUT: ;
OUTPUT: ;
REGISTER AFFECTED: ;
REMARKS:
;------------------------------------------------------------------------------
FIRE:
MOV A,(LSFIR)
;FIRE AT LAST DIRECTION
SLL A
TABLE
JB
DW
UPF
DW
RTF
DW
DNF
DW
LFF
;------------------------------------------------------------------------------ ;
FIRE AT SPECIFIED DIRECTION ;
INPUT: ;
OUTPUT: ;
REGISTER AFFECTED: ;
REMARKS:
;------------------------------------------------------------------------------
UPF:
MOV A,(FIRF)
EQI
A,0FFH
RET
MOV A,(BOYX)
GTI A,008H
JMP UPF_4
GTI A,0F8H
RET UPF_4: CALL FEBU
;FIRE UP
JMP UPF_1
;NO SPACE FOR NEW BULLET
MVI H,HIGH MAP
MOV L,(ROOM)
;BULLET CAN NOT FIRE THROUGH WALL
MOV A,(BOYR)
LDAX H+A
ONI A,001H
JMP UPF_1
CALL MXYC
;SHOULD NOT FIRE OUTSIDE DISPLAY
MOV A,(TEMP5)
SUI A,16H
LTI A,080H
JMP UPF_1
;<0=FIRE OUTSIDE DISPLAY
MOV B,(ROMPT+9)
LXI H,BBBD
;DIRECTION IS UP
MVI A,00H
STAX H+B
;DEC ABS Y BY 4
MOV A,(BOYY)
SUI A,006H
GTI A,008H
JMP UPF_2
LTI A,0F9H
JMP UPF_2
ADI A,008H
LXI H,BBBY
STAX H+B
MOV A,(BOYR)
SUI A,010H
JMP UPF_3
UPF_2:
LXI H,BBBY
STAX H+B
MOV A,(BOYR)
UPF_3:
LXI H,BBBR
STAX H+B
MOV
