home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Serious Magazine 5
/
Serious_Magazine_05_1999_Dial_pl_Side_B.atr
/
sstuff05.arc
/
BYTE256.ARC
/
TRON256.ASM
< prev
next >
Wrap
Assembly Source File
|
1988-09-01
|
4KB
|
1 lines
*-------------------*¢* Tron 256B *¢* *¢* Code: Lizard/BBSL *¢* (p) Serious, 1999 *¢*-------------------*¢¢memory equ %010101¢media equ %100101¢¢ opt memory¢¢prog equ $8800¢z_page equ $80¢¢* ✓םϕΘσ∈∈σ¼á≥σΩσ≤⌠≥∙¼á«««á≤∙≤⌠σϕ∩≈σꢢrtclock equ $12¢iccomz equ $22¢icax1z equ $2a¢icax2z equ $2b¢rowcrs equ $54¢colcrs equ $55¢¢jstick0 equ $0278¢colpf1s equ $02c5¢colpf2s equ $02c6¢runad equ $02e0¢¢scrvec equ $e410¢¢consol equ $d01f¢audf1 equ $d200¢audc1 equ $d201¢skstat equ $d20f¢wsync equ $d40a¢¢bit equ $2c ; Rozkaz BIT abs¢¢* ✓םϕΘσ∈∈σá∈βá≤⌠≥∩∈Θσá·σ≥∩≈σΩꢢ org z_page¢¢y0 org *+1 ; Pozycje¢y1 org *+1 ; graczy¢x0 org *+1¢x1 org *+1¢dir0 org *+1 ; Kierunki ruchu¢dir1 org *+1¢player org *+1 ; Numer gracza¢¢* ✓ס∩π·β⌠σδá≡≥∩τ≥βϕ⌡ꢢ org prog¢¢ ldx #$05 ; Inicjacja¢setzp lda zp,x ; strony zerowej¢ sta z_page,x¢ dex¢ bpl setzp¢¢new lda #$07 ; Graphics 7¢ jsr gr_opn¢¢ lda #$9f ; Drawto 159,0¢ jsr drawto¢ dey ; Drawto 159,95¢ lda #$5f¢ jsr drawto¢ lda #$00 ; Drawto 0,95¢ jsr drawto¢ dey ; Drawto 0,0¢ tya¢ jsr drawto¢¢ lda #$c6 ; Setcolor 1,12,6¢ sta colpf1s¢ lda #$38 ; Setcolor 2,3,8¢ sta colpf2s¢¢* ✓סσ⌠∮βáτ∮∩≈∈βꢢm_loop lda rtclock+2 ; Pause 3¢ adc #$02¢mlw cmp rtclock+2¢ bne mlw¢¢ ldx #$02 ; Player 1¢ jsr chkjoy¢ bne boom ; Z = 1 - kolizja¢ ldx #03 ; Player 2¢ jsr chkjoy¢ beq m_loop¢¢boom lsr @ ; Buuum!!!¢ bne sound¢ ldx player ; Ustaw pozycje¢bmlp lda zp-2,x ; poczatkowa¢ sta y0-2,x ; zawodnika¢ inx¢ inx¢ cpx #$08¢ bcc bmlp¢¢sound lda #$8f ; Wybuch:¢ sta audc1¢ ldx #$01 ; For X=1 To 70¢slp stx audf1 ; Sound 0,X,8,15¢ lda rtclock+2 ; Pause 0¢w cmp rtclock+2¢ beq w¢ inx ; Next X¢ cpx #$50¢ bcc slp¢ dey ; Sound 0,0,0,0¢ sty audc1¢ sty audf1¢¢w_key lda consol ; Gramy jeszcze¢ lsr @ ; raz?¢ bcc new¢ lda skstat ; Czy koniec?!¢ and #$08¢ bne w_key¢¢gr_opn sta icax2z ; Graphics 0¢ lda #$0c¢ sta icax1z¢ ldx #$00¢ jsr go_scr¢ bit icax2z¢ bne put_it¢ rts ; Wyjscie do DOSu¢¢* ✓ס≥∩πσΣ⌡≥∙áΘáµ⌡∈δπΩσꢢchkjoy sei ; Kierunek joy'a¢ lda #$00¢dirlp lsr jstick0-2,x¢ bcc dfnd¢ adc #$3f¢ bcc dirlp¢ dta b(bit)¢dfnd sta dir0-2,x¢ cli¢¢move lda dir0-2,x ; Zmiana kierunku¢ asl @¢ bcs horiz¢ bpl chu¢¢ inc y0-2,x ; ...w dol¢ dta b(bit)¢¢chu dec y0-2,x ; ...w gore¢ bcc chkcol ; BRA (C = 1)¢¢horiz bmi chr¢ dec x0-2,x ; ...w lewo¢ dta b(bit)¢¢chr inc x0-2,x ; ...w prawo¢¢chkcol lda y0-2,x ; Czy kolizja?¢ sta rowcrs¢ lda x0-2,x¢ sta colcrs¢ stx player¢ ldx #$04¢ jsr go_scr¢ pha¢¢ ldy player ; Ktory gracz?¢ lda x0-2,y ; Pobierz pozycje¢ ldx y0-2,y¢ jsr putpxl ; Rysuj¢ ldx player¢ pla ; Odworz flage¢ rts ; kolizji¢¢drawto sta rowcrs,y ; Rysowanie linii¢ lda #$11¢ sta iccomz¢ ldx #$0a¢ bne go_scr¢¢putpxl sta colcrs ; Plot¢ stx rowcrs¢put_it ldx #$06¢¢go_scr lda scrvec+1,x ; Operacje¢ pha ; ekranowe¢ lda scrvec,x¢ pha¢ tya¢ rts¢¢* ✓םϕΘσ∈∈σá≡∩π·β⌠δ∩≈σꢢzp dta b(48),b(48) ; Pozycje Y¢ dta b(19),b(139) ; Pozycje X¢ dta b($c0),b($80) ; Kierunki¢¢ org runad¢ dta a(prog)¢ end¢