mirror of
https://github.com/peterdell/wudsn-ide.git
synced 2025-01-02 20:29:43 +00:00
223 lines
4.9 KiB
ArmAsm
223 lines
4.9 KiB
ArmAsm
|
DSK INVADERS
|
||
|
LST OFF
|
||
|
ORG $4000
|
||
|
********************************
|
||
|
* LES ENVAHISSEURS DE L'ESPACE *
|
||
|
* VERSION 1.80 DU 23/12/84 *
|
||
|
********************************
|
||
|
;
|
||
|
JMP ENTREE
|
||
|
;
|
||
|
;
|
||
|
* ADRESSES PARTICULIERES *
|
||
|
CENV DS 1
|
||
|
;
|
||
|
;
|
||
|
;
|
||
|
;
|
||
|
* FONCTIONS GRAPHIQUES *
|
||
|
;
|
||
|
;
|
||
|
HGR EQU $F3E2
|
||
|
BCKGND EQU $F3F4
|
||
|
;
|
||
|
* FONCTIONS CLAVIER *
|
||
|
;
|
||
|
CLAVIER EQU $C000
|
||
|
CLACT EQU $C010
|
||
|
;
|
||
|
;
|
||
|
* FONCTIONS DIVERSES *
|
||
|
;
|
||
|
;
|
||
|
;
|
||
|
;
|
||
|
********************************
|
||
|
* CONSTANTES *
|
||
|
********************************
|
||
|
;
|
||
|
;
|
||
|
PASV DFB $08 ;INCREMENT LIGNE ENV.
|
||
|
PASH DFB $01 ;INCREMENT COLONNE ENV.
|
||
|
DISTH DFB $03 ;DISTANCE ENTRE ENV.
|
||
|
DISTV DFB $10
|
||
|
MAXENV DFB $08
|
||
|
X0 DFB $01
|
||
|
Y0 DFB $08
|
||
|
NPOS DFB 30 ;NOMBRE DE POSITIONS SUR L'ECRAN
|
||
|
FRENV0 DFB $80
|
||
|
FRBASE DFB $02
|
||
|
FRBA DFB 04
|
||
|
FRBO DFB 03
|
||
|
XBMIN DFB 8
|
||
|
XBMAX DFB $D2
|
||
|
NBAMAX DFB 03
|
||
|
NBOMAX DFB 04
|
||
|
YBMIN DFB 180
|
||
|
YBMAX DFB 08
|
||
|
YBOMAX DFB $BF
|
||
|
IBV DFB 4
|
||
|
IBASE DFB 2
|
||
|
MIBASE DFB -2
|
||
|
YBASE DFB 184
|
||
|
NLMAX DFB 05
|
||
|
NBASEM DFB 3
|
||
|
DIFFT DFB $10
|
||
|
FRBAL DFB $25
|
||
|
CST1 DFB 3
|
||
|
X1 DFB 33
|
||
|
X2 DFB 33
|
||
|
X3 DFB 33
|
||
|
Y1 DFB 08
|
||
|
Y2 DFB 60
|
||
|
Y3 DFB 110
|
||
|
XSC DFB 37
|
||
|
YSC DFB 18
|
||
|
XREC DFB 37
|
||
|
SEMBB DS 1
|
||
|
YREC DFB 70
|
||
|
ATT1 DFB #$05
|
||
|
NENVMAX DFB 54
|
||
|
G DFB $02
|
||
|
YMAX DFB $BE
|
||
|
XMAX DFB $F0
|
||
|
NDMAX DFB $2C
|
||
|
;
|
||
|
;
|
||
|
;
|
||
|
********************************
|
||
|
* VARIABLES *
|
||
|
********************************
|
||
|
;
|
||
|
;
|
||
|
* EN PAGE ZERO *
|
||
|
;
|
||
|
ADRL EQU $02
|
||
|
ADRH EQU $03
|
||
|
BDRL EQU $04
|
||
|
BDRH EQU $05
|
||
|
FORMEL EQU $06
|
||
|
FORMEH EQU $07
|
||
|
;
|
||
|
;
|
||
|
;
|
||
|
* AUTRES VARIABLES *
|
||
|
;
|
||
|
NLIGNES DS 1
|
||
|
NOCTETS DS 1
|
||
|
XENV DS 1
|
||
|
YENV DS 1
|
||
|
TYPENV DS 1
|
||
|
LENV DS 1
|
||
|
C1 DS 1
|
||
|
C2 DS 1
|
||
|
L1 DS 1
|
||
|
L2 DS 1
|
||
|
I DS 1
|
||
|
J DS 1
|
||
|
YVERT DS 1
|
||
|
XHORIZ DS 1
|
||
|
NDPLH DS 1
|
||
|
D1 DS 1
|
||
|
D2 DS 1
|
||
|
XBASE DS 1
|
||
|
CPTRENV DS 1
|
||
|
CPTRBASE DS 1
|
||
|
VBASE DS 1
|
||
|
YBALLE DS 20
|
||
|
XBALLE DS 20
|
||
|
OCTBALLE DS 20
|
||
|
DPBALLE DS 20
|
||
|
YBOMBE DS 20
|
||
|
XBOMBE DS 20
|
||
|
OCTBOMBE DS 20
|
||
|
DPBOMBE DS 20
|
||
|
NBOMBES DS 1
|
||
|
NBALLES DS 1
|
||
|
NBO DS 1
|
||
|
NBA DS 1
|
||
|
COLLIS DS 1
|
||
|
CMORT DS 1
|
||
|
LMORT DS 1
|
||
|
TEMP DS 1
|
||
|
SLIGNE DS 10
|
||
|
SCOL DS 10
|
||
|
NL2 DS 1
|
||
|
NC1 DS 1
|
||
|
NC2 DS 1
|
||
|
NBASES DS 1
|
||
|
DBALLE DS 1
|
||
|
NABRIS DS 1
|
||
|
RND1 DS 1
|
||
|
RND2 DS 1
|
||
|
SC DS 9
|
||
|
CPTRBO DS 1
|
||
|
CPTRBA DS 1
|
||
|
PLUSVITE DS 1
|
||
|
XNBRE DS 1
|
||
|
YNBRE DS 1
|
||
|
POINTS HEX 0000000000
|
||
|
REC HEX 0000000000
|
||
|
FRENV DS 1
|
||
|
NENV DS 1
|
||
|
ND DS 1
|
||
|
XD DS 50
|
||
|
YD DS 50
|
||
|
VX DS 50
|
||
|
VY DS 50
|
||
|
NDEBRIS DS 1
|
||
|
;
|
||
|
;
|
||
|
********************************
|
||
|
********************************
|
||
|
********************************
|
||
|
;
|
||
|
;
|
||
|
ENTREE JSR HGR
|
||
|
BIT $C052
|
||
|
JSR DEPART ;INITIALISATIONS
|
||
|
;
|
||
|
********************************
|
||
|
* BOUCLE PRINCIPALE *
|
||
|
********************************
|
||
|
;
|
||
|
;
|
||
|
BOUCLE JSR LIRECL ;LECTURE CLAVIER
|
||
|
;
|
||
|
JSR DEPLENV ;DEPLACEMENT ENVAHISSEURS
|
||
|
JSR MVTBOMBE
|
||
|
JSR MVTBASE ;MOUVEMENT BASE
|
||
|
JSR MVTBALLE
|
||
|
;
|
||
|
* ACCELERATION ENVAHISSEURS *
|
||
|
;
|
||
|
LDA PLUSVITE
|
||
|
BNE BOUCLE1 ;PAS MAINTENANT
|
||
|
LDA CST1
|
||
|
STA PLUSVITE ;REINITIALISATION COMPTEUR
|
||
|
LDA FRENV
|
||
|
LSR
|
||
|
ADC #$01
|
||
|
STA FRENV
|
||
|
;
|
||
|
;
|
||
|
* DECOMPTE ESPACEMENT BALLES *
|
||
|
;
|
||
|
BOUCLE1 LDA DBALLE ;DECREMENTER DBALLE
|
||
|
BEQ BOUCLE ;JUSQU'A 0
|
||
|
DEC DBALLE
|
||
|
;
|
||
|
;
|
||
|
JMP BOUCLE
|
||
|
;
|
||
|
;
|
||
|
********************************
|
||
|
PUT CLAVIER.s
|
||
|
PUT ENVAHISSEURS.s
|
||
|
PUT BASE.s
|
||
|
PUT BALLES.s
|
||
|
PUT BOMBES.s
|
||
|
PUT PARTIE.s
|
||
|
PUT ROUTINES.s
|
||
|
PUT TABLES.s
|