Ano je to tak - pokud v inicializaci zapnu pocitani CRC, tak jakmile pro odesilani udelam pauzu, tak to chape jako konec bloku a posle 3 bajty - 0x00 + CRC16. Stejne tak to je pri cteni - SIO sice narozdil od Sharpa dopredu nevi, jak bude veliky blok, ale v zaznamenanych datech je ulozena i ta pauza a v tu chvili SIO vi, ze to co precte ma porovnat se svym vypoctem CRC a pokud to nesedi, tak vystavi prislusny flag ve statusu.
V dokumentaci je jeste napsano, ze pokud ukoncis odesilaci rezim
v dobe, kdy se posledni znak jeste nachazi v odesilacim bufferu,
tak k odeslani celeho znaku sice dojde, ale uz se za nim neposila
CRC.
Michal
Ja si myslim, ze mohlo. Pokud by to bral jako konec ramce a ukoncil ho prave tim odeslanim CRC. Uz si to nepamatuju, ale mohlo by to tak byt nastavene pri setu toho SIO obvodu.
Mikes
---------- Původní e-mail ----------
Od: Michal Hučík - ORDOZ <ordoz[doména skryta]>
Komu: sharpmzmail.ordoz.com
Datum: 5. 9. 2019 12:38:44
Předmět: Re: [SharpMZ] QD SIOZ80 - odeslani CRC
_______________________________________________
No ja to mam ve stavajici emulaci prizpusobeno tomu, ze: cteme status z B + na A mame nastaveno pocitani a odesilani CRC + je povoleno odesilani a nejsme v interruptu + spocitane output CRC je vetsi, nez 0 => odesli CRC ... coz koresponduje s tim co dela ROM.
Ted kdyz se divam do toho ROM kodu, tak si uvedomuju, ze je tam delay 0.7 ms ... Mohlo by to byt tak, ze pokud dojde k prodleve pri odesilani, tak se posle CRC?
Dne 05.09.2019 v 12:22 Michal Medek napsal(a):
Ahoj,
uz je to prece jen davno, co jsem to resil. Predpokladam, ze mas dokumentaci od Z80 SIO, ale vubec si nejsem jisty, ze to tam bude popsane. Asi bych to bral jako 'feature' a emulaci tomu prizpusobil. Jinak koukni do tech mojich kodu, jestli se to tam taky resi.
Pozn.: V kazdem kodu je alespon jedna chyba a kazdy kod se da optimalizovat. Po optimalizaci kodu na jeden radek je jistota, ze ten je chybny.Hodne zdaru ;-)
Mikes
---------- Původní e-mail ----------
Od: Michal Hučík - ORDOZ <ordoz[doména skryta]>
Komu: sharpmzmail.ordoz.com
Datum: 5. 9. 2019 11:57:52
Předmět: [SharpMZ] QD SIOZ80 - odeslani CRC
_______________________________________________
Ahoj, prepisuju QD emulaci a byt hledim do datasheetu i do zapojeni radice, tak mi stale unika to jaka je vnitrni logika SIO (QD radice), ze odeslanim prikazu RESET INTERRUPT do kanalu B se u kanalu A vytvori pozadavek na odeslani CRC. (rutina EOMSG v ROM)
Mate v tom nekdo jasno?
Michal
SharpMZ mailing list
SharpMZmail.ordoz.com
http://mail.ordoz.com/mailman/listinfo/sharpmz
_______________________________________________ SharpMZ mailing list SharpMZmail.ordoz.com http://mail.ordoz.com/mailman/listinfo/sharpmz
SharpMZ mailing list
SharpMZmail.ordoz.com
http://mail.ordoz.com/mailman/listinfo/sharpmz
_______________________________________________ SharpMZ mailing list SharpMZmail.ordoz.com http://mail.ordoz.com/mailman/listinfo/sharpmz