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)]