SpeccyDOS programozás

Módszerek, módszertanok alkalmazása Spectrumon...
Avatar
Zozosoft
Hozzászólások: 781
Csatlakozott: 2012.01.06. 14:03
Kapcsolat:

SpeccyDOS programozás

Hozzászólás Szerző: Zozosoft » 2013.08.08. 12:07

A Referencia kézikönyvben ilyen megjegyzés szerepel a szektor írás/olvasás rutinoknál:
"Software-ből származó hibakódok: a software ellenőrzi, hogy pontosan 256 byte beolvasása ill. írása történik-e. Ha ez nem biztosítható, akkor a művelettől és az eltérés előjelétől függően a következő hibakódok keletkeznek:
ERROR 70 READ UNDERRUN byteszám < 256 olvasásnál
ERROR 71 WRITE UNDERRUN byteszám < 256 írásnál
ERROR 72 READ OVERRUN byteszám > 256 olvasásnál
ERROR 73 WRITE UNDERRUN byteszám > 256 írásnál

Megjegyzendő, hogy a software semmilyen esetben nem ír felül 256 byte-bál többet az FDC felé."

Ez azt jelenti, hogy a ROM rutinokkal nem lehet 512 bájtos szektorokat kezelni? Vagy a 256 bájt helyett szektorméret értendő?

A HxC floppy emulátor vezérlése speciális (255. sávon lévő) szektorok írásával/olvasásával történik, és ezek a szektorok 512 bájtosak.
Ha ezt nem lehet a gyári ROM rutinokkal kezelni, kénytelen leszek saját WD rutinokat alkalmazni...

Avatar
leslie.wss
Hozzászólások: 75
Csatlakozott: 2012.01.18. 23:36

Re: SpeccyDOS programozás

Hozzászólás Szerző: leslie.wss » 2013.08.08. 16:31

Az "ERROR 73 WRITE UNDERRUN" amúgy hibás a szövegben, hiszen OVERRUN-nak kellene lennie.
A PDF szkennelt anyagban (SpeccyDOS - Referencia adatok gépi kódú felhasználói programokhoz (kézirat)) jól is van, csak a http://www.ep128.hu/Sp_Konyv/SpeccyDos_Referencia.htm oldalon rossz a szöveg.

A PDF-ben a 'Megjegyzendő...' rész is értelmesebben van megfogalmazva.

Avatar
leslie.wss
Hozzászólások: 75
Csatlakozott: 2012.01.18. 23:36

Re: SpeccyDOS programozás

Hozzászólás Szerző: leslie.wss » 2013.08.08. 16:45

Az SCWRIT-nél (ha jól látom) nem is lehet megadni, hogy mennyi bájtot akarok kiírni. Akkor honnan tudja, hogy mennyit akarok kiírni, és azt hogy ellenőrzi a szoftver?

Avatar
Zozosoft
Hozzászólások: 781
Csatlakozott: 2012.01.06. 14:03
Kapcsolat:

Re: SpeccyDOS programozás

Hozzászólás Szerző: Zozosoft » 2013.08.08. 18:58

leslie.wss írta:Az SCWRIT-nél (ha jól látom) nem is lehet megadni, hogy mennyi bájtot akarok kiírni. Akkor honnan tudja, hogy mennyit akarok kiírni, és azt hogy ellenőrzi a szoftver?
Nem is lehetne megadni, azt a WD várja a szektorfejlécből kiolvasott szektorméret alapján, ha nem küldesz ki elég bájtot, akkor 0-val tölti fel, és adatvesztés hibát jelez.
De ebből a szövegből lehetne arra következtetni, hogy van egy számláló a programciklusban, és 256 bájt után nem foglalkozik a WD DRQ-jával.

Avatar
Zozosoft
Hozzászólások: 781
Csatlakozott: 2012.01.06. 14:03
Kapcsolat:

Re: SpeccyDOS programozás

Hozzászólás Szerző: Zozosoft » 2013.09.03. 14:37

Arra van valami ötlet, hogy PC-n lefordított programkódot hogyan lehetne SpeccyDOS lemezre vinni?
Nekem olyan ötletem van, hogy csinálni egy jó nagy üres CODE blokkot a lemezre, majd utána a lemezképben hex editorral bemásolni az üres helyre a programkódot.

Avatar
Bali
Alapító tag
Hozzászólások: 2291
Csatlakozott: 2012.01.06. 13:34
Tartózkodási hely: Budapest III.
Kapcsolat:

Re: SpeccyDOS programozás

Hozzászólás Szerző: Bali » 2013.09.03. 15:04

Na ugye, hogy van erre igény!!! Hát pont erre agitálom Leslie-t. :)

viewtopic.php?f=15&t=280
-= Bali =-
(c) 1983-2017 Evil-Soft

Avatar
Zozosoft
Hozzászólások: 781
Csatlakozott: 2012.01.06. 14:03
Kapcsolat:

Re: SpeccyDOS programozás

Hozzászólás Szerző: Zozosoft » 2013.09.29. 22:29

Zozosoft írta: Ez azt jelenti, hogy a ROM rutinokkal nem lehet 512 bájtos szektorokat kezelni?
A ROM rutinok megnézése alapján: igen, azt jelenti :-(

Válasz küldése

Ki van itt

Jelenlévő fórumozók: nincs regisztrált felhasználó valamint 1 vendég