home *** CD-ROM | disk | FTP | other *** search
/ Kocie Flaki / Kocie_Flaki_1_19xx_NG_pl_Disk_3_of_3_Side_A.atr / winxo.asm < prev    next >
Assembly Source File  |  2023-02-26  |  15KB  |  2 lines

  1. * Memhi oraz Run na $a000¢* Wyrzuc potem opisy (choc czesc)¢* -> free=50 bajtow.¢¢* áááתחמ¡ןáõ«Øááá¢* áםá∩≡Θ≤σϕ«««ááá¢* áΓ∙áצ∩∮∩»מו∧IJפᢢ* UWAGA ! Ten plik nie zwiera dwoch¢* podprocek: dir oraz sh_dir.¢* Jesli juz "sie naumiesz" (tutaj jest opis,demo itd.)¢* korzystaj z pliku תחמןצ«IJצל (wersja bez opisu).¢* Nxt wersja niebawem (nowe plug-iny:).¢¢     opt 21¢     org $a000¢¢*---------- to mozna zmieniac wedlug 'gustu'¢¢size equ 40    ; szer.ekranu¢line equ 24    ; ilosc linii (vel max. 'y' okna)¢¢*----------¢¢adde equ $bc40 ; addy ekranu  4*$100 (tu: systemowy)¢buf  equ $b800 ; bufor - ekran 2 4*$100¢¢ekr  equ $80 ,$81 * gwiazdka oznacza, ze musi byc na 0 page¢zero equ $82 ,$82 *¢_pom equ $84 ,$85¢¢stat equ $254 ($254 jest wolne...)¢_ppp equ $f0¢¢*-- przyklad - otwiera okno DIRECTORY_P (nr=0)¢*-- oraz wyswietla text¢¢*- áצסחצáנאדבמךבזáספנבדיá¿÷õ«Ø⌐ᢢ* OKNO - w A nr okna (z tabeli oknien)¢*        If bit 7 w stat=1 -> okno w inversie¢¢* SKIP - uaktywnia okna (A=nr); aby np. napisac txt¢¢* NAME - w A nr, X< Y> nazwy okna; nazwe koncz znakiem konca¢*        textu (patrz sam dol - konfiguracja)¢¢* WRI_L- wyswietla text w ostatnio otwartym oknie¢*        Jesli chcesz w innym - uaktywnij je 'SKIP'em.¢¢* CLR   - kasuje ekran¢* CLRALL- ekran i bufor¢* CLRB  - najpierw copy screen to buf, potem CLR¢* CLRBUF- kasuje bufor¢¢* CHANGE- zamiana ekran/bufor (mozesz miec dwa ekrany)¢¢* KEY   - w Y masz nr z 764; if bit 0 w stat=1¢*         -> uslyszysz dzwiek¢¢* OPENW - otwieranie okna, ale dane nie sa brane z tabeli¢*         okien - nalezy je wpisac "recznie".¢*         Patrz podprocka.¢¢* _PAUZE- czeka 20 ramek¢* CZ    - ramka¢* _WAIT - w X ile ramek¢¢* MENU  - robi wybieraczke w ostatnio otworzonym oknie.¢*         Jak chcesz w innym - uzyj 'SKIP'a.¢*         W Y - nr pozycji (od 1 do ...)¢*         W komorce 'esc' - czy wcisnieto ESCAPE.¢*         If esc=1 -> tak¢¢* Komora 'stat' bity (na razie 0 i siodmy):¢* bit 0 = %00000001 - key sound on¢* bit 7 = %10000000 - okna rysowac w inversie¢¢Ö¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡⑨¢¢*---    áגדלנáתחמ¡ןáõ«Øá¢*---    wciskaj klawisze...¢¢      lda #%00000001 ; key sound on¢      sta stat¢      lda #0¢      sta 712¢¢      jsr clrall ; kasuje ekr+buf¢¢*--- pierwsza czesc¢¢      lda #0¢      jsr okno   ; okno nr 0¢      lda #0¢      ldx <nazwa¢      ldy >nazwa¢      jsr name   ; nazwa okna nr 0¢      ldx <txt   ; text w ostatnio otwartym¢      ldy >txt   ; oknie¢      jsr wri_l¢      jsr key    ; klawisz¢¢*--- druga¢¢      lda #2     ; okno 2¢      jsr okno¢      lda #2¢      ldx <nazw2¢      ldy >nazw2¢      jsr name   ; nazwa okna 2¢      jsr key    ; klawisz¢      ldx <txt¢      ldy >txt¢      jsr wri_l  ; text w ostatnio otwartym oknie¢      jsr key    ; key¢¢*--- trzecia¢¢      lda #3     ; itd...¢      jsr okno¢      lda #3¢      ldx <nazw3¢      ldy >nazw3¢      jsr name¢      jsr key¢¢*--- czwarta¢¢four  lda #4  ; tu bez nazwy¢      jsr okno¢      ldx <menu1 ; menu w ostatnim oknie¢      ldy >menu1¢      jsr wri_l¢¢      jsr menu ; tutaj "wybieraczka"¢      lda esc  ; if esc=1 -> wcisnieto esc¢      bne koniec¢¢      cpy #1   ; w Y wybrana pozycja¢      beq wybor1¢      cpy #2¢      beq wybor2¢      jmp koniec¢¢wybor1 lda 709¢ bne wbb¢ lda #2¢ sta 710¢ lda #10¢ sta 709¢ jmp four¢wbb lda #0¢ sta 709¢ lda #10¢ sta 710¢ jmp four¢¢wybor2 lda stat ; zapala 7 bit¢      ora #128 ; co sprawia, ze okna i texty pokazywane beda¢      sta stat ; w inversie¢¢      lda #10 ; a tu otwarcie dowolnego okna¢      sta _wx¢      lda #7¢      sta _wy¢      lda #19¢      sta _sz¢      lda #6¢      sta _dl¢      jsr openw¢¢      ldx <lasttx ; i tekscik¢      ldy >lasttx¢      jsr wri_l¢      jsr key¢koniec rts¢¢txt dta d'Przyklad intrukcji@WRI_L. Pozwala ona na "wrzuce'¢ dta d'nie textu do ostanio otwartego okna. Of coz,'¢ dta d'odpowiednio formatuje txt.@'¢ dta d'Mozna wymuszac@EOLe@znakiem [malpa].@Koniec=inv'¢ dta d'[malpa].'¢ dta d'Prooooooooooba wyjscia textu poza kazda krawedz'¢ dta d'okna konczy sie fiaskiem :). If w bok - text do nxt'¢ dta d'linii. If w dol - koniec write txt.@'¢ dta d'תךלרצםIJל«««@'¢ dta d'JEscze kilka liter i powinno :) przestac'¢ dta d'wypisywac.............ij'¢¢lasttx dta d'Jakies sugestie ?@Pisz course !@'¢ dta d'Bedzie jeszcze I/O@oraz kilka innych.@'¢ dta d'@WINX 1.2 by Solo/NGij'¢¢nazwa dta d'áמס«גחפדבקנפךáij'¢nazw2 dta d'BZDET1ij'¢nazw3 dta d'IJקIJפחíij'¢¢menu1 dta d'KOLORY@SUPER TEXT@KONIECij'¢¢*------------------------------------¢¢*-- tu juz same procedury...¢*-- powyzsze sobie wyrzuc...¢¢Öתךאחדפβπ·δβáΣ∮βáנצקIJקמחנá∩⌠≈β≥⌠στ∩á∩δ∈β«⑨¢Öטσ≤∮ΘáπΦπσ≤·áΣ∮βáחממדונá¡á⌡βδ⌠∙≈∈ΘΩáΩσáºציחסºσϕ⑨¢¢menu jsr ini_ekr¢ lda #0¢ sta esc¢ clc¢ lda _wx¢ adc _sz¢ sta _pom¢ inc _pom¢ ldx _wy¢ inx¢_wbb jsr zwek¢ dex¢ bne _wbb¢ lda _dl¢ sta _pom+1¢ dec _pom+1¢ jsr inw¢wbr jsr key¢ cpy #28¢ beq es¢ cpy #15¢ bne _wd¢ lda wyby¢ cmp _pom+1¢ bcs wbr¢ jsr inw¢ jsr zwek¢ jsr inw¢ inc wyby¢ jmp wbr¢_wd cpy #14¢ bne _wr¢ lda wyby¢ beq wbr¢ jsr inw¢ jsr zmiek¢ jsr inw¢ dec wyby¢ jmp wbr¢_wr cpy #12¢ bne wbr¢ jsr inw¢ ldy wyby¢ iny¢ rts¢es inc esc¢ jsr inw¢ rts¢inw ldy _wx¢ iny¢wi lda (ekr),y¢ eor #128¢ sta (ekr),y¢ iny¢ cpy _pom¢ bne wi¢ rts¢wyby dta b(0)¢esc dta b(0)¢¢*------------------------------------¢¢Öנימנá¡á≈áóIJóá∈≥á∩δ∈βááááááá⑨¢ÖΘáΩ≤≥á∩δ∈∩á¡á≡∩δβ·σá∩δΘσ∈δ∩⑨¢Ö≡∩ΓΘσ≥βΩβπá≡∩·«á·á⌠βΓσ∮Θ«áá⑨¢ÖסIJקפם´á⌠βΓσ∮βá∩δΘσ∈á¿∈Θ·σΩ⌐⑨¢¢okno asl @¢ asl @¢ tay¢ lda win_tab,y¢ sta _wx¢ lda win_tab+1,y¢ sta _wy¢ lda win_tab+2,y¢ sta _sz¢ lda win_tab+3,y¢ sta _dl¢ jsr openw¢ rts¢¢*- ציחס - uaktwnia dane okno¢*-      - aby np. napisac text etc.¢*-      - NIE SPRAWDZA, czy dane okno¢*-      - (numer) jest widoczne (lub w ogole pokazane).¢*-      - Bo i po co ?¢*-      - Kazdy chyba wie co robi :). To nie pC.¢¢skip asl @¢ asl @¢ tay¢ lda win_tab,y¢ sta _wx¢ lda win_tab+1,y¢ sta _wy¢ lda win_tab+2,y¢ sta _sz¢ lda win_tab+3,y¢ sta _dl¢ rts¢¢ÖקIJאדכIJáתצס«áתךל»פנםáניחדמדיᢢwin_tab equ *¢*-  Odpowiednio :¢*-  _wx,_wy - wspolrzedne¢*-  _sz,_dl - szerokosc,dlugosc¢¢¬ DIRECTORY_P     ; nr A=0¢ dta b(19),b(1)   _wx,_wy¢ dta b(19),b(21)  _sz,_dl¢¢¬ DIRECTORY_L     ; A=1 itd.¢ dta b(0),b(1)¢ dta b(19),b(21)¢¢¬ MEDIUM_G¢ dta b(0),b(0)¢ dta b(15),b(5)¢¢¬ MEDIUM_S¢ dta b(0),b(7)¢ dta b(15),b(5)¢¢¬ MALE_D¢ dta b(0),b(14)¢ dta b(15),b(3)¢¢¢ÖáמIJלדá¡áמIJםתIJáנימIJáááááá⑨¢Öá≈áóIJóá¡á∈⌡ϕσ≥áááááááááá⑨¢Öá≈áן¶¼áך®áβΣΣ∙á∈β·≈∙½ijáá⑨¢¢name stx _pom¢ sty _pom+1¢ jsr skip¢ jsr ini_ekr¢¢ ldy #0¢ sty zero¢nam0 lda (_pom),y¢ cmp _txend¢ beq nam1¢ iny¢ jmp nam0¢¢nam1 sty zero+1¢ lda _sz¢ sec¢ sbc zero+1¢ bpl naok¢ lda #0¢ sta _ppp¢ jmp nam2¢naok lsr @¢ sta _ppp¢¢nam2 clc¢ lda _ppp¢ adc _wx¢ sta _ppp¢ inc _ppp¢ ldx _wy¢ beq nam3¢_nam jsr zwek¢ dex¢ bne _nam¢¢nam3 ldy zero¢ lda (_pom),y¢ ldy _ppp¢ sta (ekr),y¢ inc _ppp¢ inc zero¢ dec zero+1¢ bne nam3¢ rts¢¢¢ÖáםIJסחצםáקדןקá¡®áנצקIJקמחדáנימנᢢwri_l stx _skad+1¢      sty _skad+2¢      jsr ini_ekr¢      jsr spr_inv¢¢      clc¢      lda _wx¢      adc _sz¢      sta _pom¢      inc _pom¢¢      ldx _wy¢      inx¢_posz jsr zwek¢      dex¢      bne _posz¢¢      lda _dl¢      sta _pom+1¢¢      ldy _wx¢      iny¢      ldx #0¢¢mawr  ldy _wx¢      iny¢¢_skad lda $ffff,x¢      cmp _txend¢      beq ewrio¢      cmp _eol¢      beq _nxtlin¢      ora eor¢      sta (ekr),y¢      iny¢      cpy _pom¢      bcs _nxtlin¢      inx¢      bne _skad¢      inc _skad+2¢      jmp _skad¢¢_nxtlin dec _pom+1¢      lda _pom+1¢      beq ewrio¢      jsr zwek¢      inx¢      bne mawr¢      inc _skad+2¢      jmp mawr¢¢ewrio jmp knp¢¢_zwie clc¢      lda _skad+1¢      adc #size¢      sta _skad+1¢      bcc *+5¢      inc _skad+2¢      rts¢¢Öáבכפצáצבפדדמá¢Öááááááááááááá¢Öπ∮≥ááá¡á∩∈∮∙áϕβΘ∈á≤π≥σσ∈⑨¢Öπ∮≥β∮∮¡áβ∮∮á≤π≥σσ∈áááááá⑨¢Öπ∮≥Γáá¡áπ∮σβ≥á≈Θ⌠Φáπ∩≡∙á⌠∩áΓ⌡µµσ≥⑨¢Öπ∮≥Γ⌡µ¡áπ∮σβ≥áΓ⌡µµσ≥⑨¢¢clr jsr ini_buf¢ ldx #3¢ lda #0¢ tay¢_cl sta (_pom),y¢ iny¢ bne _cl¢ inc _pom+1¢ dex¢ bpl _cl¢ rts¢¢clrb jsr ini_buf¢ ldx #3¢_clb lda (_pom),y¢ sta (zero),y¢ lda #0¢ sta (_pom),y¢ iny¢ bne _cl¢ inc _pom+1¢ inc zero+1¢ dex¢ bpl _clb¢ rts¢¢clrall jsr ini_buf¢ ldx #3¢ lda #0¢ tay¢_cla sta (_pom),y¢ sta (zero),y¢ iny¢ bne _cla¢ inc _pom+1¢ inc zero+1¢ dex¢ bpl _cla¢ rts¢¢clrbuf jsr ini_buf¢ ldx #3¢ lda #0¢ tay¢_clF sta (zero),y¢ iny¢ bne _clf¢ inc zero+1¢ dex¢ bpl _clf¢ rts¢¢ÖáםIJלחIJמר´áארהנפ¶®דיפIJמᢢchange jsr ini_buf¢    ldx #3¢chng lda (zero),y¢    pha¢    lda (_pom),y¢    sta (zero),y¢    pla¢    sta (_pom),y¢    iny¢    bne chng¢    inc _pom+1¢    inc zero+1¢    dex¢    bpl chng¢    rts¢¢ini_buf lda <adde¢    sta _pom¢    lda >adde¢    sta _pom+1¢    lda <buf¢    sta zero¢    lda >buf+1¢    sta zero+1¢    ldy #0¢    rts¢¢ÖáיכIJתחצזדáחקס«á¢¢key lda #$ff¢ sta 764¢_key ldy 764¢ iny¢ beq _key¢ dey¢ lda stat¢ and %00000001¢ beq cich0¢ jmp sound¢¢sound ldx #$40¢sou stx $d01f¢ lda $d40b¢syn cmp $d40b¢ beq syn¢ dex¢ dex¢ dex¢ dex¢ dex¢ dex¢ bpl sou¢cich0 rts¢¢Öáááááנסדמáתחמגנתáááá¢*  _wx = poz.x  ; lewego, gornego rogu¢*  _wy = poz.y¢*  _sz = szerokosc okna¢*  _dl = dlugosc okna¢*  jesli bit 7 etykiety 'stat' jest zapalony¢*  - wtedy okno zostanie wyswietlone w inversie¢¢openw jsr ini_ekr¢      jsr spr_inv¢¢¢      jsr _spr  ; sprawdz, czy parametry sa ok.¢      lda _dl¢      sta _dl+1 ; zapamietanie parametrow¢      lda _wy   ; (potrzebne pozniej)¢      sta _wy+1¢      lda _wx¢      sta _wx+1¢      lda _sz¢      sta _sz+1¢¢_o0   lda _wy¢      beq ow0¢      jsr zwek¢      dec _wy¢      jmp _o0¢¢ow0   lda <kgl    ; odnowienie "automodyfikacji"¢      sta _mod1+1 ; patrz nizej¢      lda >kgl    ; - najpierw stawiamy '①②❎'¢      sta _mod1+2 ; potem '| |' , a na koncu 'ə②⇨'¢      lda <kcg¢      sta _mod2+1 ; pozwala to wykonac¢      lda >kcg    ; petle, bez niepotrzebnego¢      sta _mod2+2 ; "smarowania" kodem.¢      lda <kgp¢      sta _mod3+1¢      lda >kgp¢      sta _mod3+2¢¢¢_okn  ldy _wx¢_mod1 lda kgl¢      ora eor¢      sta (ekr),y¢      iny¢¢      ldx _sz¢_mod2 lda kcg¢ow1   ora eor    ; ewentualny invers¢      sta ($80),y¢      iny¢      dex¢      bne ow1¢_mod3 lda kgp¢      ora eor¢      sta ($80),y¢¢      lda <kcl    ; automodyfik¢      sta _mod1+1¢      lda >kcl    ; podmienia w procce¢      sta _mod1+2 ; '①②❎' na '| |'.¢      lda <pus¢      sta _mod2+1¢      lda >pus¢      sta _mod2+2¢      lda <kcp¢      sta _mod3+1¢      lda >kcp¢      sta _mod3+2¢      jsr zwek¢      dec _dl¢      bpl _okn¢¢      lda <kdl     '| |' na 'ə②⇨'¢      sta _mod1+1¢      lda >kdl¢      sta _mod1+2¢      lda <kcd¢      sta _mod2+1¢      lda >kcd¢      sta _mod2+2¢      lda <kdp¢      sta _mod3+1¢      lda >kdp¢      sta _mod3+2¢      lda _dl¢      cmp #$ff¢      beq _okn¢¢      lda _dl+1 ; 'odzyskanie' parametrow¢      sta _dl¢      lda _sz+1¢      sta _sz¢      lda _wx+1¢      sta _wx¢      lda _wy+1¢      sta _wy¢¢_nie1 jmp knp¢¢knp lda #0¢ sta eor¢ rts¢¢spr_inv lda stat¢      and #128¢      beq oop¢      lda #128¢      sta eor¢oop   rts¢¢*---------------- to mozna (po ukonczeniu proga) wyjebac...¢*---------------- sprawdza, czy wymiary okna sa ok.¢*-- Przy wyrzucaniu - wymaz skok w OPENW !!!¢¢Öááááááááááááááááááááááááááááááááááááᢢ*     TU WCISNIJ ^Kb¢¢_bad  jmp _oerr¢¢_spr  lda #1    ; sprawdza parametry (x,y itd.)¢      sta _pom  ; To /_spr/ mozna wyrzucic (wraz ze skokiem¢      lda _sz   ; tutaj w glownej 'openw').¢      cmp #1    ;¢      bcc _bad  ;¢      cmp #size-1¢      bcs _bad¢¢      lda #2¢      sta _pom¢      lda _dl¢      cmp #1¢      bcc _bad¢      cmp #line-1¢      bcs _bad¢      lda #3¢      sta _pom¢      lda _wx¢      cmp #size-1¢      bcs _bad¢      bpl _bad¢      lda #4¢      sta _pom¢      lda _wy¢      cmp #line-1¢      bcs _bad¢      bpl _bad¢      lda #5¢      sta _pom¢      clc¢      lda _sz¢      adc _wx¢      cmp #size-1¢      bcc _okx¢      jmp _bad¢_okx  lda #6¢      sta _pom¢      clc¢      lda _dl¢      adc _wy¢      cmp #line-1¢      bcc _oky¢      jmp _bad¢_oky  rts¢_oerr ldy #0      ; error - parametry¢_bd0  lda (ekr),y¢      sta _bufl,y¢      lda _txt1,y¢      sta (ekr),y¢      iny¢      cpy #40¢      bne _bd0¢      lda _wx¢      ldy #20¢      jsr _phx¢      lda _wy¢      ldy #25¢      jsr _phx¢      lda _sz¢      ldy #31¢      jsr _phx¢      lda _dl¢      ldy #37¢      jsr _phx¢      lda _pom¢      cmp #1¢      bne _b1¢      ldy #31¢      jmp _pods1¢_b1   cmp #2¢      bne _b2¢      ldy #37¢      jmp _pods1¢_b2   cmp #3¢      bne _b3¢      ldy #20¢      jmp _pods1¢_b3   cmp #4¢      bne _b4¢      ldy #25¢      jmp _pods1¢_b4   cmp #5¢      bne _b5¢      lda #20¢      sta _dl ; uzyte _dl i _sz,¢      lda #31 ; aby nie tworzyc nowych¢      sta _sz ; zmiennych¢      jmp _pods2¢_b5   lda #25¢      sta _dl¢      lda #37¢      sta _sz¢      jmp _pods2¢_pods1 lda (ekr),y¢       eor #128¢       sta (ekr),y¢       dey¢       lda (ekr),y¢       eor #128¢       sta (ekr),y¢       jsr _pauze¢       iny¢       jmp _pods1¢_pods2 ldy _dl¢       lda (ekr),y¢       eor #128¢       sta (ekr),y¢       dey¢       lda (ekr),y¢       eor #128¢       sta (ekr),y¢       ldy _sz¢       lda (ekr),y¢       eor #128¢       sta (ekr),y¢       dey¢       lda (ekr),y¢       eor #128¢       sta (ekr),y¢       jsr _pauze¢       jmp _pods2¢¢*-- tu ^Kk i wypieprzaj to :)...¢¢*--------- ponizsze juz potrzebne...¢¢Öס≥∩πσΣ⌡≥∙áπ·σδβ∈Θβ⑨¢Ö∞סIJרםדá¡áØãá≥βϕσδá⑨¢Öבםááááá¡áõá≥βϕβááá⑨¢Ö∞תIJחקáá¡á°á≥βϕσδáá⑨¢¢_pauze ldx #20¢_pa0  jsr cz¢      dex¢      bne _pa0¢      rts¢¢_wait jsr cz¢      dex¢      bne _pa0¢      rts¢¢cz lda 20¢ cmp 20¢ beq *-2¢ rts¢¢*---¢¢zwek clc¢ lda ekr¢ adc #size¢ sta ekr¢ bcc *+4¢ inc ekr+1¢ rts¢¢zmiek sec¢ lda ekr¢ sbc #size¢ sta ekr¢ bcs *+4¢ dec ekr+1¢ rts¢¢Öáááחמחקáóתחמ¡ןóááá⑨ ; na razie tylko init ekranu;potrzebne¢¢ini_ekr lda <adde¢      sta ekr¢      lda >adde¢      sta ekr+1¢      rts¢¢* --------------- DANE¢¢_dl dta b(0),b(0) ; dlugosc okna¢_sz dta b(0),b(0) ; sherokosc¢_wx dta b(0),b(0) ; wspolrzedne¢_wy dta b(0),b(0) ; lewego,gornego rogu¢¢eor dta b(0)¢¢*- dwie ponizsze dla sprawdzania parametrow.¢*- JAK WYWALISZ - SKASUJ I TO¢¢_bufl dta d'                                               '¢_txt1 dta d' Zle parametry - X:   Y:   SZ:   DL:    '¢¢¢*--- áינמהחורפIJבטIJᢢ* wyglad okna (DOWOLNA KAZDA KRAWEDZ)¢* W kolenym WIN-X bedzie full przykladowych okien¢¢*           mozna-etc.  fragment¢*            jak w QA¢¢kgl dta d'①'  '╱'        gora/lewy¢kgp dta d'❎'  '◆'        gora/prawy¢kdl dta d'ə'  '◆'        dol /lewy¢kdp dta d'⇨'  '╱'        dol /prawy¢kcg dta d'②'  '
  2. '        cent/gora¢kcd dta d'②'  ''        cent/dol¢kcl dta d'|'  '⑥'        cent/lewy¢kcp dta d'|'  '⇩'        cent/prawy¢pus dta d' '  ' '        spacja¢¢_txend dta d'ij' ; znak konca textu (tez dowolny)¢_eol dta d'@'   ; znak EOL'a¢¢* stat - opis poszczegolnych bitow.¢¢* %00000001 - key sound on/off¢* %10000000 - okno w inversie (skasowany = normalnie)¢¢_phx pha   ; liczba hex na ekran¢ jsr _pxdig¢ pla¢ lsr @¢ lsr @¢ lsr @¢ lsr @¢_pxdig and #%00001111¢ ora #'0'¢ cmp #'9'+1¢ bcc *+4¢ adc #6¢ jsr cnv¢ sta (ekr),Y¢ dey¢ rts¢¢cnv cmp #32 ; cnv asc/int ; vel "po mojemu", tj.moj cnv¢ bcs cv0    ; widzialem raz troche inny...¢ clc        ; ale ten jest krotszy i dziala :).¢ adc #64¢ rts¢cv0 cmp #96¢ bcs cv1¢ sec¢ sbc #32¢cv1 rts¢¢¢