home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Kocie Flaki
/
Kocie_Flaki_1_19xx_NG_pl_Disk_3_of_3_Side_A.atr
/
mkcls.asm
< prev
next >
Wrap
Assembly Source File
|
2023-02-26
|
3KB
|
1 lines
* ≡≥∩πδβá∞Θ∮σáϕΘβ∮βáΓ⌡τ≤β¢* teraz jest ok...¢* v1.1, bez bleduff...¢¢* Tworzy kod, skladajacy sie z¢¢* sta ekr¢* sta ekr+1¢* sta ekr+2¢* ...¢* sta ekr+xxxx¢* rts¢¢* Najszybsze z mozliwych kasowanie ekranu.¢* Mozna dowolnie ustawiac okno do mazania¢* (od calego ekranu, po kilka bajtow).¢¢* Ilosc bajtow potrzebnych na stworzenie "FASTCLS",¢* z uwzglednieniem parametrow (size itp.) uzyskasz,¢* wykonujac skok do _ILE (jsr _ILE).¢* Wynik w komorkach $fc,$fd - ilosc bajtow¢* oraz $fe,$ff - ostatni bajt kodu - wedlug¢* adresu podanym w etykiecie proc.¢¢*------------------------------------¢¢ opt 21¢ org $8800¢¢ jmp start¢¢* Kokejne bajty, od CLS+3:¢* Mozna zmienic i wykonac ponowny skok¢* tutaj (tak robilem w "Z").¢¢line dta b(90) / ilosc linii "okna"¢xmin dta b(00) / min.pozycja x "okna"¢xmax dta b(31) / max.pozycja x "okna"¢size dta b(32) / sher.ekranu - wazne !¢* (peek 559)¢¢ekr dta a($a000) / adres ekranu¢proc dta a($2000) / adres powstalej procki "FASTCLS".¢¢¢¬áציניח: do _ile lub mkcl¢¢start jsr _ile - patrz w/w text.¢ rts¢¢* lub jsr mkcl ; ten skok tworzy fastcls.¢¢¢mkcl lda proc¢ sta $90¢ lda proc+1¢ sta $91¢¢ lda line¢ sta use¢ lda xmin¢ sta use+1¢ lda xmin¢ sta use+2¢¢ lda ekr+1¢ sta $93¢ lda ekr¢ sta $92¢ clc¢ adc xmin¢ sta $92¢ bcc *+4¢ inc $93¢ ldy #0¢¢lin lda $92¢ sta _ad¢ lda $93¢ sta _ad+1¢ lda xmax¢ sec¢ sbc xmin¢ sta use+3¢ inc use+3¢¢_lin lda #$8d¢ jsr wst¢ lda $92¢ jsr wst¢ lda $93¢ jsr wst¢ inc $92¢ bne *+4¢ inc $93¢ dec use+3¢ bne _lin¢ lda _ad¢ sta $92¢ lda _ad+1¢ sta $93¢ clc¢ lda $92¢ adc size¢ sta $92¢ bcc *+4¢ inc $93¢ dec use¢ bne lin¢ lda #96¢ jsr wst¢ rts¢¢wst sta ($90),y¢ iny¢ bne _wst¢ inc $91¢_wst rts¢¢¢*----- procka _ILE¢¢_ile lda proc¢ sta $90¢ lda proc+1¢ sta $91¢ lda #0¢ sta $fc¢ sta $fd¢ lda proc¢ sta $fe¢ lda proc+1¢ sta $ff¢¢ lda line¢ sta use¢ lda xmin¢ sta use+1¢ lda xmin¢ sta use+2¢¢ lda ekr+1¢ sta $93¢ lda ekr¢ sta $92¢ clc¢ adc xmin¢ sta $92¢ bcc *+4¢ inc $93¢ ldy #0¢¢_il0 lda $92¢ sta _ad¢ lda $93¢ sta _ad+1¢ lda xmax¢ sec¢ sbc xmin¢ sta use+3¢ inc use+3¢¢_il1 jsr ill¢ jsr ill¢ jsr ill¢ inc $92¢ bne *+4¢ inc $93¢ dec use+3¢ bne _il1¢ lda _ad¢ sta $92¢ lda _ad+1¢ sta $93¢ clc¢ lda $92¢ adc size¢ sta $92¢ bcc *+4¢ inc $93¢ dec use¢ bne _il0¢ lda #96¢ jsr ill¢ rts¢¢ill inc $fc¢ bne *+4¢ inc $fd¢ inc $fe¢ bne *+4¢ inc $ff¢ rts¢¢¢¢use dta b(0),b(0),b(0),b(0)¢_ad dta a(0)¢¢¢¢¢¢