home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Serious Magazine 12
/
Serious_Magazine_12_2003_01_07_Dial_pl_Side_B.atr
/
stuff1.arc
/
FIGURY.ASM
< prev
next >
Wrap
Assembly Source File
|
1988-09-01
|
3KB
|
1 lines
¢*---- FIGURY ----¢*¢* RUN $9F00¢* MEMHI $9F00¢*¢* Dowolny klawisz zmiana figury¢* ד≤π - Wyjscie¢*¢*----------------¢ opt %10101¢¢pocz equ $9F00¢¢*-Str. 0¢¢clock equ $12¢atract equ $4D¢rowcrs equ $54¢colcrs equ $55 (+1)¢oldrow equ $5A¢oldcol equ $5B¢¢*-Wlasne¢¢byte equ $DD¢flx equ $DE¢cx equ $DF¢ypos equ $E0 (+7)¢xpos equ $E8 (+7)¢ax equ $F0 (+7)¢ay equ $F8 (+7)¢¢*-Str. 2¢¢colfs0 equ $2C4¢gprior equ $26F¢color equ $2FB¢kbcods equ $2FC¢¢iocb equ $340¢¢*-System¢¢rand equ $D20A¢ciov equ $E456¢reset equ $E474¢plot equ $F1CA¢clear equ $F420¢drawto equ $F9AF¢*--------------¢ org pocz¢¢bgn jsr open¢¢ sty flx * y=1¢¢start equ *¢¢ jsr clear * A=0¢ tay¢ sty color¢ iny¢ sty cx * cx=1:color+cx=color¢¢ lda rand * Kolor ekranu¢ and #%11110000¢ sta colfs0+4¢¢ ldx flx * ile elementow ma figura¢¢l0 tya * Y=1 lub $FF¢ sta ax,x¢ eor #$FE¢ sta ay,x¢ tay¢¢l3 lda rand¢ and #$7F¢ beq l3¢ sta ypos,x¢l4 lda rand¢ and #$3F¢ beq l4¢ sta xpos,x¢ dex¢ bpl l0¢¢loop equ *¢¢ ldx flx¢ ldy ypos,x¢ lda xpos,x¢ dex¢ stx byte¢ tax¢ jsr mplot¢¢lp1 ldx byte¢ ldy ypos,x¢ lda xpos,x¢ tax¢ jsr mdraw¢ dec byte¢ bpl lp1¢¢ ldx flx¢ ldy ypos,x¢ lda xpos,x¢ tax¢ jsr mdraw¢¢ ldx flx¢lp2 clc¢ lda ypos,x * ypos+ay=ypos¢ adc ay,x¢ sta ypos,x¢ clc¢ lda xpos,x * xpos+ax=xpos¢ adc ax,x¢ sta xpos,x¢¢ lda ypos,x¢ beq lp3 * Gdy linia =0¢ cmp #$BF * -"- -"- =191¢ bne lp4¢lp3 lda ay,x * ay=1 eor #$FE=-1¢ eor #$FE * ay=-1 eor #$FE=1¢ sta ay,x¢¢lp4 lda xpos,x¢ beq lp5 * gdy lewy margines¢ cmp #$4F * -"- prawy -"-¢ bne lp6¢lp5 lda ax,x * ax=1 eor #$FE=-1 ($FF)¢ eor #$FE * ax=-1 eor #$FE=1¢ sta ax,x¢¢lp6 dex¢ bpl lp2¢¢ clc * Zmien kolor rysowania¢ lda color¢ adc cx * cx=1 lub cx=$FF¢ sta color¢ beq lp7¢ cmp #15¢ bne sk¢¢*-Gdy kolor=0 lub 15¢¢lp7 lda cx * cx=1 eor #$FE=-1 ($FF)¢ eor #$FE * cx=-1 eor #$FE=1¢ sta cx¢¢sk lda kbcods * Sprawdz klawisz¢ cmp #$FF¢ beq loop¢ ldy #$FF¢ sty kbcods¢ cmp #$1C * Esc=wyjscie¢ bne sk1¢¢ jsr close¢ jmp reset * Warm reset¢¢sk1 inc flx¢ lda flx¢ and #3 * 7=max¢ beq sk1¢ sta flx¢ jmp start¢¢mplot equ *¢¢ sty rowcrs¢ stx colcrs¢ jmp plot¢¢mdraw equ *¢¢ sty rowcrs¢ stx colcrs¢ jmp drawto¢¢*-Open Gr.9¢¢open equ *¢¢ ldx #$60¢ lda #3¢ sta iocb+2,x¢ lda <s¢ sta iocb+4,x¢ lda >s¢ sta iocb+5,x¢ lda #12 * +16 gdy okno¢ sta iocb+10,x¢ lda #9 * Nr. trybu Gr.¢ sta iocb+11,x¢ jsr ciov¢ lda #$11 * 17 dla drawto¢ sta iocb+2,x¢ jmp ciov¢¢close equ *¢¢ ldx #$60¢ lda #12¢ sta iocb+2¢ jmp ciov¢¢s dta c'S:',b($9B)¢¢kprg equ *¢¢ org $2E0¢ dta a(bgn)¢*--------------¢ opt %110¢kon equ kprg¢*--------------¢ end of file¢¢