Konference: Počítač SHARP MZ-800 a emulátory

Od: Radek Suk
Datum: 20.1.2012 00:48
Předmět: savedata


Martine a Pavle, pripadne ostatni, nechcete se toho take ucastnit? 
Strucne jsem popsal hlavni myslenky co mam a co chci naprogramovat pro 
RRD ale tak, aby se to opet dalo pouzit nekde jinde. Soucasti sw chci 
dat i rutinky pro programovani flash.

Radek


SAVEDATA
========

sd.com - vlastni program pro CP/M co bude ukladat data do uloziste.

system bude fungovat s:
1) RRD - ramdisk 1,5MB
2) RRD - flash disk 512KB
3) "uloziste" - velikost 32 nebo 64MB. - zatim neexistujici HW - Flash

------------------------------------------
zakladni body systemu:
- 16 KB - vlastni system na zacatku flasky - spoustet se to bude pomoci 
prikazu EB.
- program bude v rezimu mz700 - pozdeji je mozno prepnout na mz800 ale 
jen kdyz to prida nejakou uzitecnou vlastnost.
- data se budou zapisovat za sebou. Bude zda i moznost "delat" adresare 
aby slo s tim castecne pracovat jako s diskem. Bude moznost mazat jak 
soubory tak adresare.
- mazani realne nic nesmaze jen to oznaci aby se to nezobrazovalo. Kdyz 
bude potreba tak je mozno pripadne udelat prg co "sesype" data a udela 
defragmentaci uloziste.
- vsechny IO co planuji obsluhovat umi zapsat min. 100 000 jeden sektor 
a tak je to skoro vecne. Ramdisk samozrejme toto omezeni nema.
- adresa 32 bitu (pro 64MB staci 26 bitu).
- 8 bitove data - aby se najednou nacetl cely bajt. Zde je mozno to 
pripadne upravit na 1 bitove flash. Predem bych nechtel zadny HW vyloucit.
- zvazit obsluhu puvodniho originalniho RAM disku MZ-1R12 co neumel EA a 
EB porty a jen OUT F8, IN F9 a OUT FA. Take EPROM disk (ROM CARD) dle 
AR, co umel jen cist jiz vypalenou eprom.
- z eprom disku se samozrejme bude moci jen cist. Do Flash se bude moci 
i zapisovat.
- chtel bych pomoci toho jednoduse plnit ramdisk z romdisku - a to ze 
napr. obsah adresare s nazvem "pracecpm" by se rychle prekopiroval do 
ramdisku po zadani "sd getdir pracecpm"
- soucasne bych chtel aby MZF soubor se dal spustit primo z monitoru bez 
CP/M - v monitoru EB, pak sipky a enter
- take aby MZF soubor jsem byl schopen dat v cp/m na ramdisk a pak s nim 
mohl dale pracovat.
- chtel bych aby to pracovalo bez upravene romky - aby se nemuselo resit 
to omezeni na 32KB soubor.
- stiskem jedne klavesy bych chtel aby se spustila z ramdisku cp/m - z 
toho vyplyva ze mozna pribude polozka MENU ktera se take bude moci mazat.
- bylo by hezke aby byla moznost zalohovat RRD na Flash - samozrejme zde 
na velke uloziste, kde to ma smysl.
- aritmetika bude 32bitu aby v jednom bloku mohl byt cely ramdisk

===========================================


00:00:00:00 zavadec - 16 KB program
00:00:40:00 prvni volny bajt - pri uplne prazdne pameti je zde 0FFh, coz 
je priznak ze dal nejsou zadne data

db ff-konec dat  - kontroluje se jen 7 bit. Ostatni musi byt v log 1
    7f-data pokracuji

db ff - platna data
    7f - smazana data - budto smazany soubor nebo smazany adresar

ds offset na dalsi blok dat - 32 bitu

db 00 - adresar
    01 - cp/m data - nasledujici dw je delka dat
    02 - MZF data

nasleduji data dle predchazejiciho flagu
pro 00  ds jmeno adresare - 30 znaku
pro 01  dw size - v pripade cp/m dat
pro 02  ds MZF data

----------------------------------
a zde dalsi blok
a zde dalsi blok
a zde dalsi blok
na konci ff - to oznaci ze dal jiz nejsou platna data.

 
[2012/1 (125)] [2012/2 (34)] [2012/3 (57)] [2012/4 (46)] [2012/5 (40)] [2012/6 (44)] [2012/7 (64)] [2012/8 (57)] [2012/9 (32)] [2012/10 (55)] [2012/11 (25)] [2012/12 (63)]


[1999 (1)] [2000 (168)] [2001 (733)] [2002 (459)] [2003 (654)] [2004 (224)] [2005 (105)] [2006 (182)] [2007 (201)] [2008 (294)] [2009 (363)] [2010 (782)] [2011 (522)] [2012 (642)] [2013 (442)]