[SharpMZ] Ramdisky - snad jednou pro vzdy naposled

Michal Hucik - ORDOZ ordoz na ordoz.com
Pátek Březen 18 11:11:46 CET 2016


Ahoj,

povidal jsem si tendo tyden s Radkem o nejakych novych upravach v mem 
emulatoru ohledne PEZIK a narazili jsme na to, ze vlastne nevim jake 
jsou vlastne existujici podporovane varianty ruznych ramdisku.
Napr. jsem si nikdy nevsimnul, ze v zalohovanem ramdisku chybi v 
dekoderu adres 4. bit z adresni sbernice.

Pokusil jsem se tedy nejprve udelat syntezu vsech dostupnych informaci a 
z toho nasledne udelam nejake zasadni upravy v emulatoru.

Tady je povidani, ktere jsem si k tomu doposud napsal. Podivejte se 
prosim predevsim na VCTM1 (BTW: odkud ten nazev pochazi? videl jsem jej 
ted od Radka poprve) - tento ramdisk bohuzel fyzicky nemam a tak si 
nejsem jisty, zda jsem ho popsal uplne presne.

Zustava otazkou, tak jsou na tom ROM disky. Predpokladam, ze vsechny 
musi byt kompatibilni s MZ-1R12, nicmene po natazeni vlastniho loaderu 
uz je nic nenuti v dodrzovani jakehokoliv standardu.


/*
  *
  * Jak to je s ramdisky
  * ====================
  *
  *
  * MZ-1R12 - SRAM ( http://www.sharpmz.org/mz-700/mz1r12.htm )
  * --------------
  *
  *      Ma integrovanou zalohovaci baterii. Kapacita je 32 kB. Puvodne 
koncipovan pro MZ-700,
  *      takze asi obsahuje i nejaky ROM driver? Je nekde k dispozici? 
Ten vsak v MZ-800 stejne neumime nacist...
  *
  *          -w 0xf8 - nastaveni MSB
  *          r- 0xf8 - reset adresy
  *
  *          -w 0xf9 - nastaveni LSB
  *          r- 0xf9 - cteni dat + increment adresy
  *
  *          w- 0xfa - zapis dat + increment adresy
  *
  *      Tento ramdisk je podporovan v MZ-800 ROM.
  *
  *
  *
  * MZ-1R18 ( http://www.sharpmz.org/download/man1r18.pdf )
  * -------
  *
  *      Oficialni 64 kB RAM disk.
  *
  *          -w 0xeb - nastaveni adresy RD (MSB se vezme z horni casti 
adresni sbernice)
  *          rw 0xea - R/W data + increment adresy v RD
  *
  *
  *
  *
  * VCTM1 - Standardni zalohovany RAM disk ( 
http://www.scav.cz/sharp_mz-800/sharp_mz-800_q_Popis_zalohovaneho_ramdisku.htm 
)
  * --------------------------------------
  *
  *      V Cesku zrejme nejrozsirenejsi zalohovany RAM disk, ktery se 
vyskytoval
  *      ve variante 64 kB, 256 kB a 1 MB.
  *
  *      Jedna se o upravenou kombinaci MZ-1R12 a MZ-1R18, ke kterym je 
jeste pridan strankovaci
  *      port 0xe9 pro prepinani bank.
  *
  *      Kuriozitou u tohoto ramdisku je fakt, ze do dekoderu adres neni
  *      pripojen 4. bit adresni sbernice a proto ramdisk reaguje i na 
jinych portech,
  *      nez jake mu byly oficialne prisouzeny - uvedeny v zavorce.
  *
  *
  *          rw 0xea - R/W data + increment adresy v RD
  *          rw 0xfa - R/W data + increment adresy v RD (SRAM 
kompatibilita pro zapis dat)
  *
  *          -w 0xeb - nastaveni adresy RD (MSB se vezme z horni casti 
adresni sbernice)
  *          -w (0xeb)
  *
  *          r- 0xf8 - reset adresy
  *          r- (0xe8)
  *
  *          r- 0xf9 - cteni dat + increment adresy
  *            (0xe9)
  *
  *          -w 0xe9 - nastaveni banky 0x00 - 0x0f
  *          -w (0xf9)
  *
  *
  *
  * VCTM1 - 2nd edition
  * -------------------
  *
  *      Novodoby ramdisk, ktery vychazi z VCTM1. Maximalni kapacita az 
16 MB.
  *      Jedna se o ruzne realizovane prototypy u kterych neexistuje 
blizsi specifikace.
  *      Vetsina techto ramdisku je postavena na CPLD, nebo v emulovane 
logice, tedy predpokladam,
  *      ze v dekoderu adres je zaclenena cela adresni sbernice a rozsah 
portu bude tedy o neco mensi, nez u puvodniho VCTM1.
  *
  *          rw 0xea - R/W data + increment adresy v RD
  *          -w 0xfa - zapis dat + increment adresy v RD
  *          r- 0xf9 - cteni dat + increment adresy v RD
  *
  *          -w 0xeb - nastaveni adresy RD (MSB se vezme z horni casti 
adresni sbernice)
  *
  *          r- 0xf8 - reset adresy
  *
  *          -w 0xe9 - nastaveni banky 0x00 - 0xff
  *
  *
  * Standartni PEZIK: ( 
http://www.scav.cz/sharp_mz-800/sharp_mz-800_p_Vyroba_ramdisku_Pezik.htm )
  * -----------------
  *
  *        Pouziva porty 0xe8 - 0xef
  *
  *        Cislo portu vzdy urcuje banku se kterou pracujeme.
  *
  *              Obsahuje globalni interni MSB latch registr. Obsah MSB 
latch registru se zmeni vzdy
  *              po dokoncene operaci READ.
  *
  *              Pri R/W operacich se pro adresovani v ramdisku pouzije 
ADDR = MSB_latch | MZ_ADDR_BUS_MSB
  *
  *              Pokud probihal READ, tak po jeho dokonceni MSB_latch = 
MZ_ADDR_BUS_MSB
  *
  *              Tento ramdisk je podporovan v JSS ROM ve variante se 
surfixem "A".
  *              Existuje pro nej udajne i upraveny BASIC a cp/m.
  *
  *              Hypoteticky existuje i zalohovana varianta tohoto ramdisku.
  *
  *
  * Experimentalni PEZIK:
  * ---------------------
  *
  *              Umisten na portech 0x68 - 0x6f
  *
  */

------------- další část ---------------
HTML příloha byla odstraněna...
URL: http://mail.ordoz.com/pipermail/sharpmz/attachments/20160318/6e8c9803/attachment.html 


Další informace o konferenci SharpMZ