000
15.10.2026, 08:52 Uhr
Olli
|
Moin,
so - meine MAME Emulation des P8000 funktioniert. Sogar inkl. RTC. habe den U130 emuliert, da der nunmal wenn eine RTC ist die Wahl war in einem Originalsystem. WEGA Bootet, login klappt.... alles fein.
Ich musste neben anderen Anpassungen an Z80 Komponenten die wirklich Bugs in MAME waren 2 Anpassungen an der Z80 DMA und Z80 CTC machen die "DDR spezifisch" zu sein scheinen.....
Ich bräuchte bitte einmal die Datenblätter zu den U857 und UA858. Bitte wenn es mehrere Varianten gibt die "ausführlichste" - gerne eine die OCR im Bauch hat - das erleichtert mir das suchen ungemein 
| Zitat: | // Einige CTC-Klone (z. B. der U857D im P8000) geben beim Auslesen // nach einem Software-Reset die Zeitkonstante zurück und nicht den eingefrorenen // Abwärtszähler (Down-Counter).
Belege: Keine aus einem Datenblatt. Die Zilog Z80 CTC Produktspezifikation besagt lediglich, dass ein Kanal, der einen Software-Reset erhält, „zu zählen aufhört“ und dass danach „ein neues Zeitkonstanten-Wort geschrieben werden muss“, aber sie spezifiziert nicht, was ein Read-Vorgang dazwischen zurückgibt. Das Verhalten leitet sich direkt aus den Anforderungen des Hardware-Selbsttests des P8000-Monitors ab.
|
| Zitat: | Der UA858D des P8000 liest beim Auslesen einen Wert zurück, der um eins kleiner ist als die Anzahl der übertragenen Bytes. Diese Eigenheit ist in p8k_dma_device innerhalb von p8k.cpp implementiert, welches byte_counter() überschreibt.
Belege: Die Zilog Z80 DMA Produktspezifikation besagt lediglich, dass „die tatsächliche Anzahl der übertragenen Bytes um eins größer ist als die durch die Blocklänge spezifizierte“ und dass die programmierte Blocklänge um eins kleiner ist als die gewünschte Länge. Der Wert, den der Bytelenzähler beim Lesen zurückgibt, wird dort nicht beschrieben. Ähnlich wie beim CTC basiert das Verhalten auf den Erwartungen des P8000-Selbsttests, weshalb es im P8000-Treiber gekapselt bleibt.
|
-- P8000 adventures: http://pofo.de/blog/?/categories/1-P8000 Dieser Beitrag wurde am 15.10.2026 um 08:55 Uhr von Olli editiert. |