mirror of
https://github.com/antoinevignau/source.git
synced 2024-06-15 00:29:33 +00:00
c cool !
This commit is contained in:
parent
5d56e6f443
commit
2c8f745824
Binary file not shown.
|
@ -44,11 +44,15 @@ L6028 INC L6030+1
|
||||||
L6030 LDA L6028
|
L6030 LDA L6028
|
||||||
BEQ L603F ; 00: end of line
|
BEQ L603F ; 00: end of line
|
||||||
BPL L603C ; <128: skip A bytes
|
BPL L603C ; <128: skip A bytes
|
||||||
|
and #%0111_1111
|
||||||
STA [ptrHGR1],Y ; >127: output char
|
STA [ptrHGR1],Y ; >127: output char
|
||||||
|
iny
|
||||||
|
sta [ptrHGR1],y ; >127: output char
|
||||||
INY
|
INY
|
||||||
BPL L6028
|
bra L6028 ; from BPL
|
||||||
L603C TAY
|
L603C asl
|
||||||
BPL L6028
|
TAY
|
||||||
|
bra L6028 ; from BPL
|
||||||
L603F INC theY
|
L603F INC theY
|
||||||
LDY theY
|
LDY theY
|
||||||
CPY #maxHEIGHT ; until line 192
|
CPY #maxHEIGHT ; until line 192
|
||||||
|
@ -1562,13 +1566,6 @@ L6A67 JSR printMEN
|
||||||
LSR fgGOODSTART
|
LSR fgGOODSTART
|
||||||
JMP getPLAYERINPUT
|
JMP getPLAYERINPUT
|
||||||
|
|
||||||
*--- dead code
|
|
||||||
*
|
|
||||||
* INC $97
|
|
||||||
* INC theMEN ; man++
|
|
||||||
* LSR fgPLAY
|
|
||||||
* RTS
|
|
||||||
*
|
|
||||||
*-------------------------------
|
*-------------------------------
|
||||||
* 9B - ESC - PAUSE GAME
|
* 9B - ESC - PAUSE GAME
|
||||||
*-------------------------------
|
*-------------------------------
|
||||||
|
@ -3513,12 +3510,9 @@ L7868 JMP getPLAYERINPUT
|
||||||
*-------------------------------
|
*-------------------------------
|
||||||
|
|
||||||
showALLSCORES
|
showALLSCORES
|
||||||
* JSR clearHGR2
|
JSR clearHGR1 ; was 2
|
||||||
* LDA #>oldHGR2
|
LDA #>oldHGR1 ; was 2
|
||||||
* STA activePAGE
|
STA activePAGE
|
||||||
jsr clearHGR1
|
|
||||||
lda #>oldHGR1
|
|
||||||
sta activePAGE
|
|
||||||
LDA #$00
|
LDA #$00
|
||||||
STA theX
|
STA theX
|
||||||
STA theY
|
STA theY
|
||||||
|
@ -4749,21 +4743,6 @@ L82B4 STA hgrPAGE ; page in $1F
|
||||||
STY theYSCREEN ; make it Y screen
|
STY theYSCREEN ; make it Y screen
|
||||||
stx theXSCREEN
|
stx theXSCREEN
|
||||||
jsr setHGRPOINTER
|
jsr setHGRPOINTER
|
||||||
* LDX theX ; take X
|
|
||||||
* JSR getBYBI
|
|
||||||
* STA theXSCREEN ; make it X screen
|
|
||||||
* STX sprTABLE
|
|
||||||
* LDA tblMASK1,X
|
|
||||||
* STA theMASK1
|
|
||||||
* LDA tblMASK2,X
|
|
||||||
* STA theMASK2
|
|
||||||
* JSR getSPRITEDATA
|
|
||||||
* LDA #sprHEIGHT
|
|
||||||
* STA nbLINES
|
|
||||||
* LDX #$00
|
|
||||||
* LDA sprTABLE ; derniere table de sprite?
|
|
||||||
* CMP #$05
|
|
||||||
* BCS L8301
|
|
||||||
|
|
||||||
rep #$30
|
rep #$30
|
||||||
|
|
||||||
|
@ -4814,56 +4793,6 @@ outerCOUT lda #0
|
||||||
|
|
||||||
mx %11
|
mx %11
|
||||||
|
|
||||||
*--- sprite de 2 de large
|
|
||||||
*
|
|
||||||
*L82DF LDY theYSCREEN
|
|
||||||
* JSR setHGRPOINTER
|
|
||||||
* LDY theXSCREEN
|
|
||||||
* LDA [ptrHGR1],Y ; 1
|
|
||||||
* AND theMASK1
|
|
||||||
* ORA sprDATA,X
|
|
||||||
* STA [ptrHGR1],Y
|
|
||||||
* INX
|
|
||||||
* INY
|
|
||||||
* LDA [ptrHGR1],Y ; 2
|
|
||||||
* AND theMASK2
|
|
||||||
* ORA sprDATA,X
|
|
||||||
* STA [ptrHGR1],Y
|
|
||||||
* INX
|
|
||||||
* INX
|
|
||||||
* INC theYSCREEN
|
|
||||||
* DEC nbLINES
|
|
||||||
* BNE L82DF
|
|
||||||
* RTS
|
|
||||||
*
|
|
||||||
*--- sprite de 3 de large
|
|
||||||
*
|
|
||||||
*L8301 LDY theYSCREEN
|
|
||||||
* JSR setHGRPOINTER
|
|
||||||
* LDY theXSCREEN
|
|
||||||
* LDA [ptrHGR1],Y ; 1
|
|
||||||
* AND theMASK1
|
|
||||||
* ORA sprDATA,X
|
|
||||||
* STA [ptrHGR1],Y
|
|
||||||
* INX
|
|
||||||
* INY
|
|
||||||
* LDA sprDATA,X ; 2
|
|
||||||
* STA [ptrHGR1],Y
|
|
||||||
* INX
|
|
||||||
* INY
|
|
||||||
* LDA [ptrHGR1],Y ; 3
|
|
||||||
* AND theMASK2
|
|
||||||
* ORA sprDATA,X
|
|
||||||
* STA [ptrHGR1],Y
|
|
||||||
* INX
|
|
||||||
* INC theYSCREEN
|
|
||||||
* DEC nbLINES
|
|
||||||
* BNE L8301
|
|
||||||
* RTS
|
|
||||||
*
|
|
||||||
*tblMASK1 HEX 000103070F1F3F ; mask1
|
|
||||||
*tblMASK2 HEX F8F0E0C080FEFC ; mask2
|
|
||||||
|
|
||||||
*---------------------------------------
|
*---------------------------------------
|
||||||
* DRAW SPRITE AT X,Y - TOTO
|
* DRAW SPRITE AT X,Y - TOTO
|
||||||
*---------------------------------------
|
*---------------------------------------
|
||||||
|
@ -4873,18 +4802,10 @@ drawSPRITEXY
|
||||||
STY theYSCREEN
|
STY theYSCREEN
|
||||||
STA theA
|
STA theA
|
||||||
jsr setHGRPOINTERS
|
jsr setHGRPOINTERS
|
||||||
JSR getXBYBI
|
* JSR getXBYBI
|
||||||
STA theXSCREEN
|
lda xbytable,X
|
||||||
|
sta theXSCREEN
|
||||||
|
|
||||||
* STX sprTABLE
|
|
||||||
* JSR getSPRITEDATA
|
|
||||||
* LDX #sprHEIGHT ; nb lignes
|
|
||||||
* STX nbLINES
|
|
||||||
* LDX #$00
|
|
||||||
* LDA sprTABLE
|
|
||||||
* CMP #$05
|
|
||||||
* BCS L8376
|
|
||||||
|
|
||||||
rep #$30
|
rep #$30
|
||||||
|
|
||||||
lda theXSCREEN ; Y for column
|
lda theXSCREEN ; Y for column
|
||||||
|
@ -4910,23 +4831,9 @@ outerDSXY lda #0
|
||||||
|
|
||||||
sep #$30
|
sep #$30
|
||||||
|
|
||||||
* LDA sprDATA,X
|
|
||||||
* EOR #$7F
|
|
||||||
* AND [ptrHGR1],Y
|
|
||||||
* ORA [ptrHGR2],Y
|
|
||||||
* STA [ptrHGR1],Y
|
|
||||||
|
|
||||||
*]lp lda [ptrHGR2],y ; 0..1
|
|
||||||
* tax
|
|
||||||
* and tblMASK,x
|
|
||||||
* ora (ptrSPR),y
|
|
||||||
* sta [ptrHGR1],y
|
|
||||||
|
|
||||||
]lp lda (ptrSPR),y
|
]lp lda (ptrSPR),y
|
||||||
* eor #$ff
|
|
||||||
tax
|
tax
|
||||||
and tblMASK,x
|
and tblMASK,x
|
||||||
* and [ptrHGR1],y
|
|
||||||
ora [ptrHGR2],y
|
ora [ptrHGR2],y
|
||||||
sta [ptrHGR1],y
|
sta [ptrHGR1],y
|
||||||
|
|
||||||
|
@ -4954,60 +4861,6 @@ outerDSXY lda #0
|
||||||
|
|
||||||
mx %11
|
mx %11
|
||||||
|
|
||||||
*--- sprite de 2 de large
|
|
||||||
*
|
|
||||||
*L8350 LDY theYSCREEN
|
|
||||||
* JSR setHGRPOINTERS
|
|
||||||
* LDY theXSCREEN
|
|
||||||
* LDA sprDATA,X
|
|
||||||
* EOR #$7F
|
|
||||||
* AND [ptrHGR1],Y
|
|
||||||
* ORA [ptrHGR2],Y
|
|
||||||
* STA [ptrHGR1],Y
|
|
||||||
* INX
|
|
||||||
* INY
|
|
||||||
* LDA sprDATA,X
|
|
||||||
* EOR #$7F
|
|
||||||
* AND [ptrHGR1],Y
|
|
||||||
* ORA [ptrHGR2],Y
|
|
||||||
* STA [ptrHGR1],Y
|
|
||||||
* INX
|
|
||||||
* INX
|
|
||||||
* INC theYSCREEN
|
|
||||||
* DEC nbLINES
|
|
||||||
* BNE L8350
|
|
||||||
* RTS
|
|
||||||
*
|
|
||||||
*--- sprite de 3 de large
|
|
||||||
*
|
|
||||||
*L8376 LDY theYSCREEN
|
|
||||||
* JSR setHGRPOINTERS
|
|
||||||
* LDY theXSCREEN
|
|
||||||
* LDA sprDATA,X
|
|
||||||
* EOR #$7F
|
|
||||||
* AND [ptrHGR1],Y
|
|
||||||
* ORA [ptrHGR2],Y
|
|
||||||
* STA [ptrHGR1],Y
|
|
||||||
* INX
|
|
||||||
* INY
|
|
||||||
* LDA sprDATA,X
|
|
||||||
* EOR #$7F
|
|
||||||
* AND [ptrHGR1],Y
|
|
||||||
* ORA [ptrHGR2],Y
|
|
||||||
* STA [ptrHGR1],Y
|
|
||||||
* INX
|
|
||||||
* INY
|
|
||||||
* LDA sprDATA,X
|
|
||||||
* EOR #$7F
|
|
||||||
* AND [ptrHGR1],Y
|
|
||||||
* ORA [ptrHGR2],Y
|
|
||||||
* STA [ptrHGR1],Y
|
|
||||||
* INX
|
|
||||||
* INC theYSCREEN
|
|
||||||
* DEC nbLINES
|
|
||||||
* BNE L8376
|
|
||||||
* RTS
|
|
||||||
|
|
||||||
*---------------------------------------
|
*---------------------------------------
|
||||||
* DRAW SPRITE AT X,Y WITH COLLISION - TUTU
|
* DRAW SPRITE AT X,Y WITH COLLISION - TUTU
|
||||||
*---------------------------------------
|
*---------------------------------------
|
||||||
|
@ -5018,17 +4871,11 @@ drawSPRXYCOLLISION
|
||||||
STY theYSCREEN
|
STY theYSCREEN
|
||||||
STA theA
|
STA theA
|
||||||
jsr setHGRPOINTERS
|
jsr setHGRPOINTERS
|
||||||
JSR getXBYBI
|
* JSR getXBYBI
|
||||||
STA theXSCREEN
|
lda xbytable,X
|
||||||
* STX sprTABLE
|
sta theXSCREEN
|
||||||
* JSR getSPRITEDATA
|
|
||||||
* LDA #sprHEIGHT
|
|
||||||
* STA nbLINES
|
|
||||||
LDX #$00
|
LDX #$00
|
||||||
STX fgCOLLISION
|
STX fgCOLLISION
|
||||||
* LDA sprTABLE
|
|
||||||
* CMP #$05
|
|
||||||
* BCS L83F5
|
|
||||||
|
|
||||||
rep #$30
|
rep #$30
|
||||||
|
|
||||||
|
@ -5055,36 +4902,18 @@ outerXYCOL lda #0
|
||||||
|
|
||||||
sep #$30
|
sep #$30
|
||||||
|
|
||||||
* LDY theXSCREEN
|
|
||||||
* LDA [ptrHGR1],Y
|
|
||||||
* EOR [ptrHGR2],Y
|
|
||||||
* AND sprDATA,X
|
|
||||||
* ORA fgCOLLISION
|
|
||||||
* STA fgCOLLISION
|
|
||||||
* LDA sprDATA,X
|
|
||||||
* ORA [ptrHGR1],Y
|
|
||||||
* STA [ptrHGR1],Y
|
|
||||||
|
|
||||||
]lp lda [ptrHGR1],Y ; 0..1
|
]lp lda [ptrHGR1],Y ; 0..1
|
||||||
eor [ptrHGR2],Y ; si HGR1=HGR2 => 0
|
eor [ptrHGR2],Y ; si HGR1=HGR2 => 0
|
||||||
and (sprDATA),y
|
and (sprDATA),y
|
||||||
ora fgCOLLISION
|
ora fgCOLLISION
|
||||||
sta fgCOLLISION
|
sta fgCOLLISION
|
||||||
|
|
||||||
* lda (sprDATA),y
|
|
||||||
* ora [ptrHGR1],y
|
|
||||||
lda [ptrHGR2],y ; 0..1
|
lda [ptrHGR2],y ; 0..1
|
||||||
tax
|
tax
|
||||||
and tblMASK,x
|
and tblMASK,x
|
||||||
ora (ptrSPR),y
|
ora (ptrSPR),y
|
||||||
sta [ptrHGR1],y
|
sta [ptrHGR1],y
|
||||||
|
|
||||||
*]lp lda [ptrHGR2],y ; 0..1
|
|
||||||
* tax
|
|
||||||
* and tblMASK,x
|
|
||||||
* ora (ptrSPR),y
|
|
||||||
* sta [ptrHGR1],y
|
|
||||||
|
|
||||||
iny
|
iny
|
||||||
cpy #sprBYTES
|
cpy #sprBYTES
|
||||||
bcc ]lp
|
bcc ]lp
|
||||||
|
@ -5105,164 +4934,10 @@ outerXYCOL lda #0
|
||||||
dec nbLINES2
|
dec nbLINES2
|
||||||
bne outerXYCOL
|
bne outerXYCOL
|
||||||
sep #$30
|
sep #$30
|
||||||
stz fgCOLLISION
|
|
||||||
rts
|
rts
|
||||||
|
|
||||||
mx %11
|
mx %11
|
||||||
|
|
||||||
*--- sprite de 2 de large
|
|
||||||
|
|
||||||
L83C3 LDY theYSCREEN
|
|
||||||
JSR setHGRPOINTERS
|
|
||||||
LDY theXSCREEN
|
|
||||||
LDA [ptrHGR1],Y
|
|
||||||
EOR [ptrHGR2],Y
|
|
||||||
AND sprDATA,X
|
|
||||||
ORA fgCOLLISION
|
|
||||||
STA fgCOLLISION
|
|
||||||
LDA sprDATA,X
|
|
||||||
ORA [ptrHGR1],Y
|
|
||||||
STA [ptrHGR1],Y
|
|
||||||
INX
|
|
||||||
INY
|
|
||||||
LDA [ptrHGR1],Y
|
|
||||||
EOR [ptrHGR2],Y
|
|
||||||
AND sprDATA,X
|
|
||||||
ORA fgCOLLISION
|
|
||||||
STA fgCOLLISION
|
|
||||||
LDA sprDATA,X
|
|
||||||
ORA [ptrHGR1],Y
|
|
||||||
STA [ptrHGR1],Y
|
|
||||||
INX
|
|
||||||
INX
|
|
||||||
INC theYSCREEN
|
|
||||||
DEC nbLINES
|
|
||||||
BNE L83C3
|
|
||||||
RTS
|
|
||||||
|
|
||||||
*--- sprite de 3 de large
|
|
||||||
|
|
||||||
L83F5 LDY theYSCREEN
|
|
||||||
JSR setHGRPOINTERS
|
|
||||||
LDY theXSCREEN
|
|
||||||
LDA [ptrHGR1],Y
|
|
||||||
EOR [ptrHGR2],Y
|
|
||||||
AND sprDATA,X
|
|
||||||
ORA fgCOLLISION
|
|
||||||
STA fgCOLLISION
|
|
||||||
LDA sprDATA,X
|
|
||||||
ORA [ptrHGR1],Y
|
|
||||||
STA [ptrHGR1],Y
|
|
||||||
INX
|
|
||||||
INY
|
|
||||||
LDA [ptrHGR1],Y
|
|
||||||
EOR [ptrHGR2],Y
|
|
||||||
AND sprDATA,X
|
|
||||||
ORA fgCOLLISION
|
|
||||||
STA fgCOLLISION
|
|
||||||
LDA sprDATA,X
|
|
||||||
ORA [ptrHGR1],Y
|
|
||||||
STA [ptrHGR1],Y
|
|
||||||
INX
|
|
||||||
INY
|
|
||||||
LDA [ptrHGR1],Y
|
|
||||||
EOR [ptrHGR2],Y
|
|
||||||
AND sprDATA,X
|
|
||||||
ORA fgCOLLISION
|
|
||||||
STA fgCOLLISION
|
|
||||||
LDA sprDATA,X
|
|
||||||
ORA [ptrHGR1],Y
|
|
||||||
STA [ptrHGR1],Y
|
|
||||||
INX
|
|
||||||
INC theYSCREEN
|
|
||||||
DEC nbLINES
|
|
||||||
BNE L83F5
|
|
||||||
RTS
|
|
||||||
|
|
||||||
*---------------------------------------
|
|
||||||
* GET SPRITE DATA
|
|
||||||
*---------------------------------------
|
|
||||||
* Move sprite data at $df..$ff
|
|
||||||
|
|
||||||
getSPRITEDATA
|
|
||||||
LDA #sprHEIGHT ; char height
|
|
||||||
STA nbLINES
|
|
||||||
|
|
||||||
LDA #<tblOFFSPR ; pointer to index of sprite in each table
|
|
||||||
STA ptrDATA
|
|
||||||
LDA #>tblOFFSPR
|
|
||||||
STA ptrDATA+1
|
|
||||||
|
|
||||||
LDA tblPTRSPR,X ; one of the six tables
|
|
||||||
STA L845A+2
|
|
||||||
STA L8466+2
|
|
||||||
STA L848B+2
|
|
||||||
STA L8497+2
|
|
||||||
|
|
||||||
LDX #$00
|
|
||||||
L8455 LDY theA
|
|
||||||
LDA (ptrDATA),Y
|
|
||||||
TAY
|
|
||||||
L845A LDA LA000,Y ; a
|
|
||||||
STA L846F+1
|
|
||||||
CLC
|
|
||||||
ADC #$01
|
|
||||||
STA L8474+1
|
|
||||||
L8466 LDA LA080,Y ; a+1
|
|
||||||
STA L846F+2
|
|
||||||
STA L8474+2
|
|
||||||
L846F LDA LA000 ; b
|
|
||||||
STA sprDATA,X
|
|
||||||
L8474 LDA LA000 ; b+1
|
|
||||||
STA $E0,X
|
|
||||||
|
|
||||||
LDA ptrDATA ; next line
|
|
||||||
CLC
|
|
||||||
ADC #$68
|
|
||||||
STA ptrDATA
|
|
||||||
LDA ptrDATA+1
|
|
||||||
ADC #$00
|
|
||||||
STA ptrDATA+1
|
|
||||||
|
|
||||||
LDY theA
|
|
||||||
LDA (ptrDATA),Y
|
|
||||||
TAY
|
|
||||||
L848B LDA LA000,Y ; c
|
|
||||||
STA L84A0+1
|
|
||||||
CLC
|
|
||||||
ADC #$01
|
|
||||||
STA L84A7+1
|
|
||||||
L8497 LDA LA080,Y ; c+1
|
|
||||||
STA L84A0+2
|
|
||||||
STA L84A7+2
|
|
||||||
L84A0 LDA LA000 ; d
|
|
||||||
ORA $E0,X
|
|
||||||
STA $E0,X
|
|
||||||
L84A7 LDA LA000 ; d+1
|
|
||||||
STA $E1,X
|
|
||||||
|
|
||||||
LDA ptrDATA ; next data
|
|
||||||
CLC
|
|
||||||
ADC #$68 ; b/c we have 68 sprites
|
|
||||||
STA ptrDATA
|
|
||||||
LDA ptrDATA+1
|
|
||||||
ADC #$00
|
|
||||||
STA ptrDATA+1
|
|
||||||
INX
|
|
||||||
INX
|
|
||||||
INX
|
|
||||||
DEC nbLINES
|
|
||||||
BNE L8455
|
|
||||||
RTS
|
|
||||||
|
|
||||||
tblPTRSPR DB >LA200 ; The six tables of sprites
|
|
||||||
DB >LA300
|
|
||||||
DB >LA400
|
|
||||||
DB >LA500
|
|
||||||
DB >LA600
|
|
||||||
DB >LA700
|
|
||||||
DB >LA800
|
|
||||||
|
|
||||||
*---------------------------------------
|
*---------------------------------------
|
||||||
* CHECK HIGH SCORE
|
* CHECK HIGH SCORE
|
||||||
*---------------------------------------
|
*---------------------------------------
|
||||||
|
@ -5339,10 +5014,13 @@ L8536 LDX scoreoffset,Y ; permet la saisie des initiales
|
||||||
STA scorebuf+$07,X
|
STA scorebuf+$07,X
|
||||||
STY $69
|
STY $69
|
||||||
LDA scoreoffset,Y
|
LDA scoreoffset,Y
|
||||||
|
clc
|
||||||
|
adc #<scorebuf
|
||||||
STA L8582+1
|
STA L8582+1
|
||||||
STA L85C9+1
|
STA L85C9+1
|
||||||
JSR showALLSCORES
|
JSR showALLSCORES
|
||||||
LDA #>oldHGR2
|
* LDA #>oldHGR2
|
||||||
|
lda #>oldHGR1
|
||||||
STA activePAGE
|
STA activePAGE
|
||||||
LDA $69
|
LDA $69
|
||||||
CLC
|
CLC
|
||||||
|
@ -5410,14 +5088,14 @@ L85F6 LDA #$68
|
||||||
LDA bsDATA
|
LDA bsDATA
|
||||||
BNE L8601
|
BNE L8601
|
||||||
LDA #sprCURSOR
|
LDA #sprCURSOR
|
||||||
L8601 JSR coutHGR2
|
L8601 JSR coutHGR1 ; not 2
|
||||||
L8604 LDAl KBD
|
L8604 LDAl KBD
|
||||||
BMI L8628
|
BMI L8628
|
||||||
JSR checkMOVEMENT
|
JSR checkMOVEMENT
|
||||||
DEC counter
|
DEC counter
|
||||||
BNE L8604
|
BNE L8604
|
||||||
LDA #sprEMPTY
|
LDA #sprEMPTY
|
||||||
JSR coutHGR2
|
JSR coutHGR1 ; not 2
|
||||||
LDA #$68
|
LDA #$68
|
||||||
STA counter
|
STA counter
|
||||||
L8619 LDAl KBD
|
L8619 LDAl KBD
|
||||||
|
@ -5429,7 +5107,7 @@ L8619 LDAl KBD
|
||||||
|
|
||||||
L8628 PHA
|
L8628 PHA
|
||||||
LDA bsDATA
|
LDA bsDATA
|
||||||
JSR coutHGR2
|
JSR coutHGR1 ; not 2
|
||||||
PLA
|
PLA
|
||||||
RTS
|
RTS
|
||||||
|
|
||||||
|
@ -5815,19 +5493,19 @@ getXY
|
||||||
tay
|
tay
|
||||||
RTS
|
RTS
|
||||||
|
|
||||||
getBYBI LDA bytable,X ; in: board X
|
*getBYBI LDA bytable,X ; in: board X
|
||||||
PHA ; out: A: HGR column (0..39)
|
* PHA ; out: A: HGR column (0..39)
|
||||||
LDA bitable,X ; X: sprite table (0..6)
|
* LDA bitable,X ; X: sprite table (0..6)
|
||||||
TAX
|
* TAX
|
||||||
PLA
|
* PLA
|
||||||
RTS
|
* RTS
|
||||||
|
|
||||||
getXBYBI LDA xbytable,X ; in: X: HGR x-coord
|
*getXBYBI LDA xbytable,X ; in: X: HGR x-coord
|
||||||
PHA ; out: A: HGR column (0..39)
|
* PHA ; out: A: HGR column (0..39)
|
||||||
LDA xbitable,X ; X: sprite table (0..6)
|
* LDA xbitable,X ; X: sprite table (0..6)
|
||||||
TAX
|
* TAX
|
||||||
PLA
|
* PLA
|
||||||
RTS
|
* RTS
|
||||||
|
|
||||||
*-------------------------------
|
*-------------------------------
|
||||||
* CALCULATE HGR Y-COORD
|
* CALCULATE HGR Y-COORD
|
||||||
|
|
|
@ -369,68 +369,6 @@ ytable DB $00 ; HGR line index
|
||||||
DB $A5 ; 165
|
DB $A5 ; 165
|
||||||
DB $B5 ; 181 ; ligne de texte
|
DB $B5 ; 181 ; ligne de texte
|
||||||
|
|
||||||
*--- From a X in board to a Y column in HGR (0..39) - LOGO
|
|
||||||
|
|
||||||
bytable DB $00
|
|
||||||
DB $01
|
|
||||||
DB $02
|
|
||||||
DB $04
|
|
||||||
DB $05
|
|
||||||
DB $07
|
|
||||||
DB $08
|
|
||||||
DB $0A
|
|
||||||
DB $0B
|
|
||||||
DB $0C
|
|
||||||
DB $0E
|
|
||||||
DB $0F
|
|
||||||
DB $11
|
|
||||||
DB $12
|
|
||||||
DB $14
|
|
||||||
DB $15
|
|
||||||
DB $16
|
|
||||||
DB $18
|
|
||||||
DB $19
|
|
||||||
DB $1B
|
|
||||||
DB $1C
|
|
||||||
DB $1E
|
|
||||||
DB $1F
|
|
||||||
DB $20
|
|
||||||
DB $22
|
|
||||||
DB $23
|
|
||||||
DB $25
|
|
||||||
DB $26
|
|
||||||
|
|
||||||
*--- From a X in board to a sprite table (0..6) - LOGO - Useless now
|
|
||||||
|
|
||||||
bitable DB $00 ; 0..4: sprite is 2-col wide
|
|
||||||
DB $03 ; 5..6: sprite is 3-col wide
|
|
||||||
DB $06
|
|
||||||
DB $02
|
|
||||||
DB $05
|
|
||||||
DB $01
|
|
||||||
DB $04
|
|
||||||
DB $00
|
|
||||||
DB $03
|
|
||||||
DB $06
|
|
||||||
DB $02
|
|
||||||
DB $05
|
|
||||||
DB $01
|
|
||||||
DB $04
|
|
||||||
DB $00
|
|
||||||
DB $03
|
|
||||||
DB $06
|
|
||||||
DB $02
|
|
||||||
DB $05
|
|
||||||
DB $01
|
|
||||||
DB $04
|
|
||||||
DB $00
|
|
||||||
DB $03
|
|
||||||
DB $06
|
|
||||||
DB $02
|
|
||||||
DB $05
|
|
||||||
DB $01
|
|
||||||
DB $04
|
|
||||||
|
|
||||||
*--- From a X in HGR (0..139) coordinate to a Y column in HGR (0..39)
|
*--- From a X in HGR (0..139) coordinate to a Y column in HGR (0..39)
|
||||||
|
|
||||||
xbytable
|
xbytable
|
||||||
|
@ -440,292 +378,6 @@ xbytable
|
||||||
]debut = ]debut+1
|
]debut = ]debut+1
|
||||||
--^
|
--^
|
||||||
|
|
||||||
DB $00 ; and the index within the table
|
|
||||||
DB $00
|
|
||||||
DB $00
|
|
||||||
DB $00
|
|
||||||
DB $01
|
|
||||||
DB $01
|
|
||||||
DB $01
|
|
||||||
DB $02
|
|
||||||
DB $02
|
|
||||||
DB $02
|
|
||||||
DB $02
|
|
||||||
DB $03
|
|
||||||
DB $03
|
|
||||||
DB $03
|
|
||||||
DB $04
|
|
||||||
DB $04
|
|
||||||
DB $04
|
|
||||||
DB $04
|
|
||||||
DB $05
|
|
||||||
DB $05
|
|
||||||
DB $05
|
|
||||||
DB $06
|
|
||||||
DB $06
|
|
||||||
DB $06
|
|
||||||
DB $06
|
|
||||||
DB $07
|
|
||||||
DB $07
|
|
||||||
DB $07
|
|
||||||
DB $08
|
|
||||||
DB $08
|
|
||||||
DB $08
|
|
||||||
DB $08
|
|
||||||
DB $09
|
|
||||||
DB $09
|
|
||||||
DB $09
|
|
||||||
DB $0A
|
|
||||||
DB $0A
|
|
||||||
DB $0A
|
|
||||||
DB $0A
|
|
||||||
DB $0B
|
|
||||||
DB $0B
|
|
||||||
DB $0B
|
|
||||||
DB $0C
|
|
||||||
DB $0C
|
|
||||||
DB $0C
|
|
||||||
DB $0C
|
|
||||||
DB $0D
|
|
||||||
DB $0D
|
|
||||||
DB $0D
|
|
||||||
DB $0E
|
|
||||||
DB $0E
|
|
||||||
DB $0E
|
|
||||||
DB $0E
|
|
||||||
DB $0F
|
|
||||||
DB $0F
|
|
||||||
DB $0F
|
|
||||||
DB $10
|
|
||||||
DB $10
|
|
||||||
DB $10
|
|
||||||
DB $10
|
|
||||||
DB $11
|
|
||||||
DB $11
|
|
||||||
DB $11
|
|
||||||
DB $12
|
|
||||||
DB $12
|
|
||||||
DB $12
|
|
||||||
DB $12
|
|
||||||
DB $13
|
|
||||||
DB $13
|
|
||||||
DB $13
|
|
||||||
DB $14
|
|
||||||
DB $14
|
|
||||||
DB $14
|
|
||||||
DB $14
|
|
||||||
DB $15
|
|
||||||
DB $15
|
|
||||||
DB $15
|
|
||||||
DB $16
|
|
||||||
DB $16
|
|
||||||
DB $16
|
|
||||||
DB $16
|
|
||||||
DB $17
|
|
||||||
DB $17
|
|
||||||
DB $17
|
|
||||||
DB $18
|
|
||||||
DB $18
|
|
||||||
DB $18
|
|
||||||
DB $18
|
|
||||||
DB $19
|
|
||||||
DB $19
|
|
||||||
DB $19
|
|
||||||
DB $1A
|
|
||||||
DB $1A
|
|
||||||
DB $1A
|
|
||||||
DB $1A
|
|
||||||
DB $1B
|
|
||||||
DB $1B
|
|
||||||
DB $1B
|
|
||||||
DB $1C
|
|
||||||
DB $1C
|
|
||||||
DB $1C
|
|
||||||
DB $1C
|
|
||||||
DB $1D
|
|
||||||
DB $1D
|
|
||||||
DB $1D
|
|
||||||
DB $1E
|
|
||||||
DB $1E
|
|
||||||
DB $1E
|
|
||||||
DB $1E
|
|
||||||
DB $1F
|
|
||||||
DB $1F
|
|
||||||
DB $1F
|
|
||||||
DB $20
|
|
||||||
DB $20
|
|
||||||
DB $20
|
|
||||||
DB $20
|
|
||||||
DB $21
|
|
||||||
DB $21
|
|
||||||
DB $21
|
|
||||||
DB $22
|
|
||||||
DB $22
|
|
||||||
DB $22
|
|
||||||
DB $22
|
|
||||||
DB $23
|
|
||||||
DB $23
|
|
||||||
DB $23
|
|
||||||
DB $24
|
|
||||||
DB $24
|
|
||||||
DB $24
|
|
||||||
DB $24
|
|
||||||
DB $25
|
|
||||||
DB $25
|
|
||||||
DB $25
|
|
||||||
DB $26
|
|
||||||
DB $26
|
|
||||||
DB $26
|
|
||||||
DB $26
|
|
||||||
DB $27
|
|
||||||
DB $27
|
|
||||||
DB $27
|
|
||||||
|
|
||||||
*--- From a X in HGR to a sprite table (0..6)
|
|
||||||
|
|
||||||
xbitable DB $00 ; 0..4: sprite is 2-col wide
|
|
||||||
DB $02 ; 5..6: sprite is 3-col wide
|
|
||||||
DB $04
|
|
||||||
DB $06
|
|
||||||
DB $01
|
|
||||||
DB $03
|
|
||||||
DB $05
|
|
||||||
DB $00
|
|
||||||
DB $02
|
|
||||||
DB $04
|
|
||||||
DB $06
|
|
||||||
DB $01
|
|
||||||
DB $03
|
|
||||||
DB $05
|
|
||||||
DB $00
|
|
||||||
DB $02
|
|
||||||
DB $04
|
|
||||||
DB $06
|
|
||||||
DB $01
|
|
||||||
DB $03
|
|
||||||
DB $05
|
|
||||||
DB $00
|
|
||||||
DB $02
|
|
||||||
DB $04
|
|
||||||
DB $06
|
|
||||||
DB $01
|
|
||||||
DB $03
|
|
||||||
DB $05
|
|
||||||
DB $00
|
|
||||||
DB $02
|
|
||||||
DB $04
|
|
||||||
DB $06
|
|
||||||
DB $01
|
|
||||||
DB $03
|
|
||||||
DB $05
|
|
||||||
DB $00
|
|
||||||
DB $02
|
|
||||||
DB $04
|
|
||||||
DB $06
|
|
||||||
DB $01
|
|
||||||
DB $03
|
|
||||||
DB $05
|
|
||||||
DB $00
|
|
||||||
DB $02
|
|
||||||
DB $04
|
|
||||||
DB $06
|
|
||||||
DB $01
|
|
||||||
DB $03
|
|
||||||
DB $05
|
|
||||||
DB $00
|
|
||||||
DB $02
|
|
||||||
DB $04
|
|
||||||
DB $06
|
|
||||||
DB $01
|
|
||||||
DB $03
|
|
||||||
DB $05
|
|
||||||
DB $00
|
|
||||||
DB $02
|
|
||||||
DB $04
|
|
||||||
DB $06
|
|
||||||
DB $01
|
|
||||||
DB $03
|
|
||||||
DB $05
|
|
||||||
DB $00
|
|
||||||
DB $02
|
|
||||||
DB $04
|
|
||||||
DB $06
|
|
||||||
DB $01
|
|
||||||
DB $03
|
|
||||||
DB $05
|
|
||||||
DB $00
|
|
||||||
DB $02
|
|
||||||
DB $04
|
|
||||||
DB $06
|
|
||||||
DB $01
|
|
||||||
DB $03
|
|
||||||
DB $05
|
|
||||||
DB $00
|
|
||||||
DB $02
|
|
||||||
DB $04
|
|
||||||
DB $06
|
|
||||||
DB $01
|
|
||||||
DB $03
|
|
||||||
DB $05
|
|
||||||
DB $00
|
|
||||||
DB $02
|
|
||||||
DB $04
|
|
||||||
DB $06
|
|
||||||
DB $01
|
|
||||||
DB $03
|
|
||||||
DB $05
|
|
||||||
DB $00
|
|
||||||
DB $02
|
|
||||||
DB $04
|
|
||||||
DB $06
|
|
||||||
DB $01
|
|
||||||
DB $03
|
|
||||||
DB $05
|
|
||||||
DB $00
|
|
||||||
DB $02
|
|
||||||
DB $04
|
|
||||||
DB $06
|
|
||||||
DB $01
|
|
||||||
DB $03
|
|
||||||
DB $05
|
|
||||||
DB $00
|
|
||||||
DB $02
|
|
||||||
DB $04
|
|
||||||
DB $06
|
|
||||||
DB $01
|
|
||||||
DB $03
|
|
||||||
DB $05
|
|
||||||
DB $00
|
|
||||||
DB $02
|
|
||||||
DB $04
|
|
||||||
DB $06
|
|
||||||
DB $01
|
|
||||||
DB $03
|
|
||||||
DB $05
|
|
||||||
DB $00
|
|
||||||
DB $02
|
|
||||||
DB $04
|
|
||||||
DB $06
|
|
||||||
DB $01
|
|
||||||
DB $03
|
|
||||||
DB $05
|
|
||||||
DB $00
|
|
||||||
DB $02
|
|
||||||
DB $04
|
|
||||||
DB $06
|
|
||||||
DB $01
|
|
||||||
DB $03
|
|
||||||
DB $05
|
|
||||||
DB $00
|
|
||||||
DB $02
|
|
||||||
DB $04
|
|
||||||
DB $06
|
|
||||||
DB $01
|
|
||||||
DB $03
|
|
||||||
DB $05
|
|
||||||
|
|
||||||
ds \
|
|
||||||
|
|
||||||
*--- $1F00 - Score buffer
|
*--- $1F00 - Score buffer
|
||||||
|
|
||||||
scorebuf ds 256
|
scorebuf ds 256
|
||||||
|
|
Binary file not shown.
File diff suppressed because it is too large
Load Diff
|
@ -176,11 +176,6 @@ noSOUND _HideMenuBar
|
||||||
|
|
||||||
*----------------------------------- Exit point
|
*----------------------------------- Exit point
|
||||||
|
|
||||||
lda #theGAME
|
|
||||||
stal $300
|
|
||||||
lda #^theGAME
|
|
||||||
stal $302
|
|
||||||
|
|
||||||
ldx #256-2 ; efface la page directe
|
ldx #256-2 ; efface la page directe
|
||||||
]lp stz $00,x
|
]lp stz $00,x
|
||||||
dex
|
dex
|
||||||
|
@ -564,7 +559,7 @@ proCREATE dw 7 ; pcount
|
||||||
dw $5d ; file_type
|
dw $5d ; file_type
|
||||||
adrl $8022 ; aux_type
|
adrl $8022 ; aux_type
|
||||||
ds 2 ; storage_type
|
ds 2 ; storage_type
|
||||||
adrl 38400 ; eof
|
adrl 38400+256 ; eof
|
||||||
ds 4 ; resource_eof
|
ds 4 ; resource_eof
|
||||||
|
|
||||||
proDESTROY dw 1 ; pcount
|
proDESTROY dw 1 ; pcount
|
||||||
|
|
Loading…
Reference in New Issue
Block a user