[abc80] Periodiskt återkommande osynk...?

juhasz juhasz at abc.se
Sön Dec 25 01:51:52 PST 2016


Coolt! Nu väntar vi alla på ett hr-demo! ;) vill du dela med dig av koden vore det kul också!
Det slog mig också att man har goda möjligheter att generera ljud eftersom man iaf under bildritning är i synk med varje linje. då kan man passa på att vid linjeslut göra ett klick i högtalaren o vips kan man göra 1-bit pcm-ljud med 15624 hz (eller 7812 hz?) grundfrekvens samtidigt med bildritningen...
Robert
Skickat från min Samsung Galaxy-smartphone.
-------- Originalmeddelande --------Från: Andreas Gustafsson <andreas.gustafsson at gmail.com> Datum: 2016-12-25  01:43  (GMT+01:00) Till: juhasz <juhasz at abc.se> Kopia: Göran Åhling <goran at eadc.se>, abc80 <abc80 at abc80.org> Rubrik: Re: SV: Re: [abc80] Periodiskt återkommande osynk...? 
Fel av mig, hade missat en instruktion när jag tittade i ROM-assemblyn, 41 cykler skulle det vara!
När jag justerat för det får jag (vad som i alla fall i min ögon) ser ut som 100% stabil hires!



2016-12-25 1:26 GMT+01:00 Andreas Gustafsson <andreas.gustafsson at gmail.com>:
Efter att ha studerat koden lite ser det ut som om den kör en nedräkning av ett 24-bitars värde, där den sköter de lägsta 8 bitarna i den normala varianten, och så var 256:e frame så justerar den de övriga 16.
Har jag räknat rätt så tar denna sekvens 21 klockcykler extra, så det borde bara vara att justera min timingkod till att vänta 21 cykler mindre i fallet där de lägsta 8 bitarna av 24-bitars räknaren står på 0, vilket betyder att den tagit den långa sekvensen. Dock så lyckas jag än så länge inte bli av med synk-flimret, kan vara jag som räknat fel antingen i ROM-koden eller i min justeringskod, eller så har jag missförstått något.

För visst borde det funka så här (jag är lite dålig på hur Z80/NMI/Halt etc.) :

1. Jag kör HALT
2. VBL-interrupt inträffar
3. ROM-NMI kod körs
4. Jag får tillbaka kontroll i mitt program och koden efter HALT-instruktionen körs.

Då borde ju det enda som händer vara attvar 256:e frame har 21 extra cykler ätits upp i steg 3, vilket jag lätt kan justera för.

/Andreas



2016-12-24 21:56 GMT+01:00 juhasz <juhasz at abc.se>:
Liten paus (interrupt!) i julfirandet....
...för att kolla in disassemblyn som finns här på sidan 61!http://www.abc80.org/docs/Programvaran%20i%20ABC80.pdf
nmi-interrupt gör jr till adress 0:71 och där är det en del matematik för klockan som säkert tar lite olika tid vid overflow etc. Om man är riktigt noggrann borde man kunna räkna ut hur lång tid nästa nmi kommer ta genom att läsa av klockvariablerna och se vilken väg i koden nmi-rutinen kommer ta o därmed undvika osynk........
...nu tillbaka till glöggen! God jul! ;)
RETI
Robert


Skickat från min Samsung Galaxy-smartphone.
-------- Originalmeddelande --------Från: Göran Åhling <goran at eadc.se> Datum: 2016-12-24  21:32  (GMT+01:00) Till: Andreas Gustafsson <andreas.gustafsson at gmail.com> Kopia: abc80 <abc80 at abc80.org> Rubrik: Re: [abc80]
 	Periodiskt återkommande osynk...? 
"Klockan"?
INC på en byte, men vid Overflow efter 256 måste även nästa...
Jag har ett vagt minne av NMI, men jag kan mycket väl ha fel.

Min disassemblering är ännu inte åtkomlig.

Och, GOD JUL, alla på listan!
/Göran
Skickat från min iPhone

> 24 dec. 2016 kl. 00:51 skrev Andreas Gustafsson <andreas.gustafsson at gmail.com>:
> 
> Hej igen!
> 
> Jag har nu kommit en bit med mitt experimenterande med grafikuppdatering
> synkroniserad med rasterstrålen.
> Dock märker jag att det ibland "hoppar till" och verkar tappa mitt fina
> cykel-exakta synk.
> Det ser ut som det är återkommande, händer kanske var 4:e sekund eller så,
> och verkar bara vara precis någon enstaka frame, sedan är allt i synk igen.
> Känns som det är någon sorts interrupt eller något som går in och stör, och
> det måste vara ett NMI för jag börjar mitt program med DI för att disabla
> alla andra interrupts.
> Kan det vara någon sorts NMI som ligger och kör på varje VBL, men koden som
> den exekverar råkar ta lite extra tid periodiskt efter några hundra frames?
> _______________________________________________
> ABC80 mailing list
> ABC80 at abc80.org
> http://www.abc80.org/mailman/listinfo/abc80


_______________________________________________
ABC80 mailing list
ABC80 at abc80.org
http://www.abc80.org/mailman/listinfo/abc80






More information about the ABC80 mailing list