64KBI - modul paměti 64 kB pro počítač SORD m5
---------------------------------------------- Jak již z názvu vyplývá, jedná se o rozšíření technických mož-
ností počítače SORD m.5 pomocí paměťového modulu 64 kB, vestavě-
ného do "cartridge" od Basicu - I. První označení tohoto modulu
bylo EM-64, posléze, když se objevil modul 64kBF, začlo být
používáno označení 64KBI pro EM-64 s odpojitelným MONITORem ROM
Obvod ROM-Basic-I byl umístěn na základní desku počítače (není
však nutnou podmínkou).
Dynamická paměť RAM 64 kB je doplněna dalšími obvody, které
umožňují realizovat řadu nových funkcí.
1)Paměť lze pomocí přepínače nastavit do režimu 32 kB, nebo
64 kB. Použití režimu 32 kB je funkčně shodné jako originální
"cartridge" EM-32.
2)Režim "Basic - I" - po zapnutí automaticky aktivuje Basic-I,
pokud je zabudován uvnitř počítače nebo je praven pro provoz
v rozdvojce.
3)Režim autostartu - po zapnutí není připojen Basic-I. Pokud se
v paměti nenachází na adrese &2000 nebo &4000 kód &FF,počítač
"zbloudí", jinak se udělá "TAPE", se vším, co k němu patří.
4)Režim blokování zápisu do dolní poloviny paměti. Tato funkce
je výhodná při uložení systémových programu od adresy &2000
do adresy &7000. Při blokovaném zápisu nemůže být tento
program omylem přepsán.
Při použití paměti v plné kapacitě je možné od adresy &2000
"natahovat" a spouštět libovolný originální program, např. Basic
- F, Basic - G, Falc, videohry "vytažené" z originálních
"cartridge" a nebo nově vytvořené systémové programy, které však
musí být koncepčne shodné s originálními programy. Zavedení
těchto programů je vsak nutné provádět buď:
a)"napokováním" programu ve strojovém kódu, který zajistí odpo-
jení ROM BASIC-I a upravení RAM tak, aby se provedlo TAPE.
b)pomocí nějakého BOOTovacího programu, nejlépe "BOOT.64;7.CM",
nebo není-li k dispozici tak pomocí programu "BOOT.BL", jehož
výpis je přiložen. Tento program netestuje RAM a neupravuje
MONITOR ROM tak, aby byl případně v RAM provozovatelný. Dále
také nestartuje programy tak, jak by měl - od startovací adresy.
Ale pro první pokusy s RAM 56 a 64 kB plně postačuje.
K bodu a):
FOR I=0 TO 13:READ A:POKE I+&8000,A:NEXT:DATA &F3,&3E,&01,&D3,
&6C,&3E,&FF,&32,&00,&40,&32,&00,&20,&C7
což je:
8000 DI ;zákaz přerušení
LD A,01
OUT (6Ch),A ;odpoj ROM BASIC-I
LD A,0FFh ;připrav RAM pro monitor
LD (4000h),A ;ať si myslí, že je BUS
LD (2000h),A
RST 0 ;a odstartuj MONITOR ROMK bodu b):
+++ PROGRAM BOOT.BL +++
DI
LD HL,0
LD DE,9000H
LD BC,4000H ;přenes monitor + Basic-I
LDIR ;do RAM od 9000H
LD A,1
OUT (6CH),A ;odpoj ROM
LD HL,9000H
LD DE,0
LD BC,4000H
LDIR ;přenes zpět do RAM
LD HL,80D0H ;ukazatel RAM pro
CALL 1598H ;načti FILE ID
JP C,ERROR ;vypiš chybové hlášení
LD HL,80D1H
LD B,9
CALL MSG ;vypiš název FILE.ID
XOR A
LD HL,80D0H
CALL 153BH ;načti FILE.DATA
JP C,ERROR
LD SP,7300H
LD A,70H
LD I,A ;nastav I registr
LD HL,7094H
LD BC,1CEH
CALL 860H ;vynuluj RAM
LD HL,165H
LD DE,7000H
LD BC,5DH
LDIR ;nastav paměť dle tabulky
CALL 1C2H ;inicializace CTC
EI
CALL 1811H ;inicializace SOUND GENERATOR
CALL 0E0BH ;inicializace VDP
DI
LD HL,7000H ;nastavení systémových
LD (7010),HL ;ukazatelů RAM
LD HL,0000
LD (7012),HL
LD (7016),HL
LD HL,7300H
LD (7014),HL
EI
CALL 00E4H ;najdi ROM a spusť ( najde RAM
;a případně spustí )
JP 33H ;v případě chyby natahuj znovu
MSG:LD A,(HL) ;výpis hlavičky FILE.ID
CP 00
RET Z
CALL 1088H ;tiskni znak
INC HL
DJNZ MSG
RET
ERROR:LD HL,TPER ;vypiš chybové hlášení a spusť
CALL MSG ;BASIC-I
CALL MSG
XOR A
OUT (6CH),A ;připoj zpět ROM
LD HL,(2001H)
EI
JP (HL) ;návrat do Basic-I
TPER DEFB 0D
DEFM "TAPE ERROR!----------------------------------------------------------------
Další možnosti počítače SORD m5
-------------------------------
Vytvořením paměti EM-64 je možné orientovat počítač SORD M5 jako
malý vývojový systém, pro který již existuje editor a assembler.
Tento systém lze doplnit paralelním rozhraním PI-5.1, pro který
je již připravován plošný spoj. Interface PI-5.1 je prakticky
shodný s originální "cartridge" PI-5, která je určena pro připo-
jení diskové jednotky FD-5.
Drobnou úpravou modulu EM-64 a počítače SORD M5 lze rozšířit ka-
pacitu pameti na 80 kB a pamet EM-64 používat od adresy 0000 ja-
ko volně přístupnou. Takto upravená EM-64ka se označuje 64KBI.
Program "BOOT.BL" s tímto počítá a do dynamické paměti zavádí na
adresy &0000-&1FFF MONITOR ROM.
Potom je možno v originálním monitoru provádět úpravy podle pot-
řeby.
Tím, že lze provozovat v počítači SORD M5 pamět RAM od adresy
0000,je položen základ operačnímu systému CP/M. Je již navržena
deska (vývojový vzorek) interface pro floppy disky 3 1/2", 5
1/4" a 8" s inteligentním řadičem fy Western Digital.
Do budoucna je však otázkou, zda by nebylo výhodnější navrhnout
"cartridge" 256kB RAM disk a systém CP/M "natahovat" z kazetové-
ho magnetofonu. Zdá se, že paměti 41256 budou dostupnější než
floppy disky. V každém případě jsou však levnější. Použitím RAM
disku však bude omezen komfort operačního systému CP/M.
sepsáno v létě '88
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~