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

Od: Michal Hučík
Datum: 2.1.2012 14:48
Předmět: Re: Floppy driver


Ahoj,

takze jak uz jsem psal, tak dnes jsem zapojit a zprovoznil svuj stary 
FDC a testuju na nem svuj driver. Prozatim vypada, ze vse chodi jak ma, 
udelam RESTORE, nastavim sector a side a bez problemu prectu pozadovany 
sektor. Po tomto muzu klidne udelat seek na jinou stopu, zmenit cislo 
sektoru a strany a cist dalsi - pokazde bez potizi (se zapisem si zatim 
jeste nehraju).

Problem na realnem FDC nastane ve chvili, kdy pouziju prikaz READ_ADDR ( 
precteni 6 bajtu: track, sector, side, sector_size a crc16 ).

Po tomto prikazu uz nejsem schopny aplikovat READ_SECTOR, protoze po 
jeho zadani uz mi radic neustale vraci jen BUSY (0xfe).

Co je vsak zajimave, tak 2x po sobe ten READ_ADDR spustit lze - ovsem 
vrati mi pokazde jiny crc16. Zkusil jsem po READ_ADDR zastavit na 1/2 
sekundy motor, pak znova nastartovat udelat RESTORE, STEP, SEEK - vse 
OK, ale ani takhle uz stejne nelze udelat READ_SECTOR. Jedine co v tomto 
pripade pomuze je tvrdy reset pocitace.

Presto, ze prikaz READ_ADDR konci s nulovym statusem, tak jsem po jeho 
provedeni zkousel poslat do radice prikaz preruseni a preruseni s 
resetem, ale nic nepomohlo a nasledne cteni sektoru je proste pase.

  Prikaz READ_ADDR jsem nevidel pouzity v zadnem Sharpackem programu (ve 
Zdenkovem emulatoru s nim samozrejme problem neni). Jediny pripad, kde 
se tento prikaz vyskytuje je BOOT loader systemu cp/m 4.1, ktery hned 
pri svem startu udela RESTORE a pak pres READ_ADDR zjistuje format nulte 
stopy na nulte strane. Na realnem HW jsem vsak cp/m 4.1 taky jeste 
nevidel a nejsem si jisty, zda READ_ADDR nekdo dokazal pouzit i v jinem 
kontextu.

Nezkouseli jste si s timto prikazem nekdy hrat?

Mate nekdo upraveny HD radic a bezi vam na nem cp/m 4.1?

Michal

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