★ APPLICATIONS ★ BUREAUTIQUE ★ AMSTRAD/SCHNEIDER 464: DEFINIRANJE ZNAKOV|Moj Micro) ★ |
Definiranje Znakov | Applications Bureautique |
Po naše na zaslonu in papirju Zamisel je preprosta. Nekam v pomnilnik moramo shraniti rutino, ki ves čas nadzoruje kode. poslane tiskalniku. In ko se pojavi kaka YU črka. tiskalnik prejme ukaz. naj preide v grafični način, tj. naj nariše določeni znak, nato pa nadaljuje pisanje v tekstnem načinu. Poleg YU znakov je tako mogoče definirati katerikoli drug znak in ga kajpada izpisati (narisati). Pri CPC 464 je primerno mesto za razne uporabne rutine glasbeni vmesni pomnilnik, ki zaseda 686 bytov, od 46417 do 47103. Del tega pomnilnika vedno uporablja ukaz PRINT CHR$(7), zadnjih 485 bytov pa je namenjenih ukazu SOUND, ki ga v Taswordu seveda ni in zato nam je ta prostor na razpolago. Avtor tega zapisa ga uporablja za 8-bitni Centronics, za zaslonske kopije (screen dump) in za definiranje znakov. Na novo definirani znaki imajo kode od 128 do 159, kar skrajša način računanja naslova definicije znaka oziroma znakov, pač pa kode YU znakov zaradi tega ne ustrezajo YU standardu. Znaki so definirani v matriki 7 x 5 in shranjeni od lokacije 46848 dalje. Od te lokacije je prostora za 32 znakov, od katerih vsak obsega 8 bytov. Za znak s kodo 128 je definicija oblike od 46.848, za kodo 129 od 46856 it. V jedru (kernel) moramo amstradovo rutino za tiskalnik preusmeriti k naši. Na naslovu 48625, kjer inicialno piše JP 2040, z dvema pokoma spremenimo naslov skoka na 46805: s POKE 48626,213 in POKE 48627,182. Ko na določeno lokacijo vpišete kode rutin in kode YU črk. jih posnemite na delovni trak (disketo) s SAVE"tasyu bin", b , 46754 , 350. Rutino objavljamo v izvirni in izvršni kodi. prvemu listingu je dodanih nekaj komentarjev. Če rutino prenašate na drug naslov, morate naslov oznake (label) ULAZ (vhod) iz listinga s pokom prenesti na lokaciji 46626 in 48627. definicijo oblike znakov pa shraniti na začetek pomnilniške strani. Navodilo za predelavo Tasworda Naložite Tasword v računalnik in preidite v basic. Potem predelajte vrstice v basicu: 119 POKE 48626,213: POKE 48627,182180 GOSUB 300: LOCATE 8,10:PRINT "Loading . . . YUTasword . . . ":MEMORY mhs:LOAD"!YUtasw .bin": LOAD "!tasYU .bin": CLOSEIN: MEMORY ml 2480 CLS:PEN 1:GOSUB 1620:MEMORY mh:SAVE"YUTatsw .bas":SAVE"YUtasw .bin",b,&3E00, 13233: SAVE "!tasYU .bin", n , 46754,350 :CLOSEOUT : MEMORY ml:RETURN Z direktnim ukazom naložite rutino in naše črke: LOAD »tasYU.bin« in znova poženite Tasword z ukazom RUN. Z opcijo Customise program (C) lahko izbirate, ali boste redefinirali standardne znake izpisa oziroma znake iz drugega nabora znakov. Če vaš tasprint že na zaslonu pokaže naše črke. boste morali redefinirati standardne znake izpisa. Najpogostejša verzija naših črk v Taswordu je takale: Standardni nabor znakov
Če pa bi radi imeli vse znake ASCII, naše črke in še kak drug znak. potem vse to shranite v drugi nabor znakov. Spet boste iz Tasworda prešli v basic. Naše črke boste na zaslonu dobili tako. da boste vnesli tole vrsto: 1 CLS:FOR l=0 TO 9:INPUT "ADR";ADR: :FOR J=0 TO 7: INPUT B: POKE ADR,B: ADR = ADR+1 :NEXT J;I:END:Program poženite z RUN in vnesite številke iz vrstic DATA. Zaslon YU črk, II. nabor DATA 17236,108,56,60,102,96,102,60,0 ;REM Č |
Znak: | a | b | c | d | e | f | g | h | i | j |
Koda tasYU: | 128 | 129 | 130 | 131 | 132 | 133 | 134 | 135 | 136 | 137 |
YU črke: | Č | č | Ć | ć | Ð | đ | Š | š | Ž | ž |
Zdaj imate na razpolago Tasword z naéimi črkami v kombinaci)i s kakim dostopom (poceni) tiskalnilkom. Prepričan sem, da imajo bralci dovoljznanja in da bodo mogli sami razširiti Tasword, npr z znaki grške abecede Če pa bodo imeli kake težave, na) se javijo avtorju.
|
|