OldComp.cz
https://oldcomp.cz/

nestabilní Elite na ZX Spectrum 48k?
https://oldcomp.cz/viewtopic.php?f=37&t=10945
Stránka 11

Autor:  zxcygnus [ 11.05.2022, 21:30 ]
Předmět příspěvku:  nestabilní Elite na ZX Spectrum 48k?

Občas používám k testování opravené desky, kromě např. Retroleum Diag ROM i nějakou hru, co cyklicky něco dělá, abych viděl, že to běží stabilně i za hodinu dvě, tři... Abych viděl, že se to pokazilo, když k tomu po čase přijdu a nemusel to sledovat celou dobu. Použitelný je např. Manic Miner, Great Escape... nikoli Elite.

Kdyby se mi to stalo s jednou deskou, neřešil bych a považoval desku za vadnou. Ale protože těch desek je už určitě víc než deset různých, tak přemýšlím, jaká je v Elite chyba, že demo s rotující lodí nikdy nevydrží běžet dlouho.

Ve Fuse emulátoru vše ok, na šedé a všelijak vylepšené 128k +2 taky ok (nepamatuju si, že by to padlo), ale na jakémkoli ZXS 48k vč. Sparrowa to dřív, nebo později spadne. V deskách byly různé ULA, různé Z80 (Zilog NMOC/CMOS, NEC D780C atd...)

elite.tap
35396 bytů
md5sum 86956bbb6bb32844523d5787f423ec92

Např. teď jsem to zkusil na jinak perfektně stabilní desce (Sparrow prototyp 1 s posílenou GND a filtrací napájení, šum na 5V minimální, originál Zilog Z80 Z0840004PSC z roku 89, žádná přeznačená čína), běželo od 19:33 do cca 19:37:30, pak znovu od 19:37:58 do 19:44, potřetí opět...? Náhodně se po pár minutách resetuje.

Přesně stejně se mi to chovalo na deskách ISSUE 2, 3, 4B, 6A... každá se svými čipy. Nezáleží jestli je v nich Ferranti ULA, nebo vLA82.

Nefungovalo mi to ani na Nucleonu 512k, chová se přesně stejně jako ZXS 48k, po pár minutách se Elite resetuje.

Pro kontrolu v emulátoru 19:33 - 21:26 stále běží

ZX Spectrum 128k +2 (šedá, upravovaná s ISOROM, KMouse, spínaným stabilizátorem...) 19:54 - 21:45 stále běží
(stejné DivIDE jako u ZXS48k, stejná TAPka ze stejné SD karty, stejný SimpleRTC, stejná roztrojka, stejný UPI...)

Co vaše počítače? Vydrží alespoň hodinu, nebo se zresetují?

Přílohy:
elite-screenshot.png
elite-screenshot.png [ 2.56 KiB | Zobrazeno 2602 krát ]
elite.tap [34.57 KiB]
80 krát

Autor:  Busy [ 12.05.2022, 05:52 ]
Předmět příspěvku:  Re: nestabilní Elite na ZX Spectrum 48k?

zxcygnus píše:
Ve Fuse emulátoru vše ok
S nastavenym ZX 48k ?

Autor:  tommik [ 12.05.2022, 07:23 ]
Předmět příspěvku:  Re: nestabilní Elite na ZX Spectrum 48k?

Evidentne je vice verzi hry, ruzne zabugovane a odbugovane, 128k friendly atd.

Autor:  z00m [ 12.05.2022, 07:37 ]
Předmět příspěvku:  Re: nestabilní Elite na ZX Spectrum 48k?

Ja by som to tiež pripisoval skôr nevydarenému cracku.

Autor:  pwramp [ 12.05.2022, 07:47 ]
Předmět příspěvku:  Re: nestabilní Elite na ZX Spectrum 48k?

Stáhnul jsem a vyzkoušel:
Didaktik Gama 192k - běží celou noc
Sparrow s THT součástkami - běží tak okolo 5 minut, nikdy víc než 10.

Autor:  SCjoe [ 12.05.2022, 08:34 ]
Předmět příspěvku:  Re: nestabilní Elite na ZX Spectrum 48k?

Ahoj,

nepotvrzuji, na Humble (FPGA ULA) je to OK.
Mas nejaky duvod pouzivat tuto starsi verzi?

Problemu je vice:
https://spectrumcomputing.co.uk/forums/ ... php?t=4841

Opravenych 48k je na ruskych sajtech nekolik,
posledni, s vymenenym D rutinami, je asi z r. 2019 (?)
https://zx-pk.ru/attachment.php?attachm ... vbZa5OI9MI

Autor:  zxcygnus [ 12.05.2022, 10:51 ]
Předmět příspěvku:  Re: nestabilní Elite na ZX Spectrum 48k?

Busy píše:
zxcygnus píše:
Ve Fuse emulátoru vše ok
S nastavenym ZX 48k ?
Ano, v emulátoru bylo zvolené ZXS 48k s originál ROM bez úprav (plus byl ještě povolený Betadisk bez spuštěného TRDOSu, ZX Printer, Kempston joystick a myš).
SCjoe píše:
Mas nejaky duvod pouzivat tuto starsi verzi?
Nemám. Když jsem to hrál "naostro", hrál jsem opravenou Elite 3. Ale líbilo se mi pro otestování stability ZXS 48, že se tam něco animuje, že to zjevně používá víc instrukcí a kousek větší oblast RAM než třeba cyklus čekající na stisk klávesy.

V podstatě jde jen o to, že mě nestabilita překvapila. O nějakých chybách původního Elite jsem věděl, ale nikoli o této.
pwramp píše:
Stáhnul jsem a vyzkoušel:
Didaktik Gama 192k - běží celou noc
Sparrow s THT součástkami - běží tak okolo 5 minut, nikdy víc než 10.
To s tím DG192k je zajímavé (ověřím, taky mám pocit, že mi fungoval správně), protože má stejnou ULA jako ZXS 48k i Sparrow. Počet taktů za 1/50 je stejný, časování identické. Víme, že to zlobí z různými Z80, takže to není problém např. Zilog vs NEC.

... prostě zajímavý problém v čem se ty počítače, jinak velmi blízké, liší, že se na nich jeden program chová odlišně.

Autor:  PotPalo [ 12.05.2022, 12:15 ]
Předmět příspěvku:  Re: nestabilní Elite na ZX Spectrum 48k?

Nebude to použitím ilegálnych inštrukcií procesora? Prečo asi boli ilegálne? Lebo nefungovali spoľahlivo na všetkých sériách procesorov, tak ich dali do ilegality. Keď niekto na tom postaví hru, tak nech sa nediví, že sa to spáva rôzne.

Autor:  Jack_Free [ 12.05.2022, 12:31 ]
Předmět příspěvku:  Re: nestabilní Elite na ZX Spectrum 48k?

Zajimave, osobne tedy pouzivam na testovani stroju nejake demo, to podle me zatizi procesor na maximum, a jeste mohu poslouchat hudbu.

Autor:  Jack_Free [ 12.05.2022, 13:39 ]
Předmět příspěvku:  Re: nestabilní Elite na ZX Spectrum 48k?

PotPalo píše:
Je úsmevné počúvať o zaťažení procesoru pri Z80. :) Ten ide predsa vždy na 100%, aj keď robí iba NOP. Zaťažiť sa dá skôr pamäť, aby sa program vykonával z jej väčšej časti, alebo aby z väčšej časti čerpal dáta. Tiež porty.


Jasne mas pravdu :lol: ale delam to tak na vsech strojich, a vetsinou pouzivam dema ktera jdou stale dokola, idealne aby se obcas neco dotahlo z karty nebo disku.
Ovsem idealni jsou primo k tomu urcene programy na testovani hw.

Autor:  pcmaker [ 12.05.2022, 19:05 ]
Předmět příspěvku:  Re: nestabilní Elite na ZX Spectrum 48k?

Zdroj používáš stejný ke všem, nebo každého jemu vlastní?

p.s. holé ZX Spectrum 48k (gumák) ISSUE 3B s originální ROM v EPROM. Originální zdroj. Nahrání ze stažené TAPky přes Tapir 1.0. PC ->Tvarovač->ZX Spectrum.

Spuštění programu 12.5.2022 v 18:45 a kosmik se zatím točí:
18:45 - start
19:30 - konec ok

Připojeno Divide 57c. TAPka nakopírována na CF kartu Pretec 2GB a hra spuštěna z Divide:
19:33 - start
20:30 - konec ok


Druhý stroj:
ZX Spectrum+ 48k
ISSUE 3B s originální ROM v EPROM. Stejný zdroj. Nahrání ze stažené TAPky přes Tapir 1.0. PC ->Tvarovač->ZX Spectrum.
21:40 - start
21:47 - reset

Autor:  zxcygnus [ 12.05.2022, 19:22 ]
Předmět příspěvku:  Re: nestabilní Elite na ZX Spectrum 48k?

pcmaker píše:
Zdroj používáš stejný ke všem, nebo každého jemu vlastní?

p.s. holé ZX Spectrum 48k (gumák) s originální ROM v EPROM. Nahrání ze stažené TAPky přes Tapir 1.0. PC ->Tvarovač->ZX Spectrum.

Spuštění programu v 18:45 a zatím se kosmik točí.
Zdroj používám většinou jeden stejný ke všemu např. ke Sparrow a té zmíněné šedé +2 (adaptér od 128k+ toastrack), někdy používám laboratorní zdroj (https://www.gme.cz/laboratorni-zdroj-owon-p4603 - pro zajímavost, Sparrow má spotřebu cca 1/2 proti ZXS 48k). Ale napájení jsem kontroloval osciloskopem. Kdyby tam bylo jen trochu výraznější zvlnění/šum než je obvyklé, viděl bych to. Jsem si velmi jistý, že kvalita napájení není příčinou.

Zkusit Elite z TAPky bez účasti DivIDE určitě zkusit můžu a asi zkusím, ale tak trochu to neřeší původní účel. Kdybych chtěl Elite hrát, tak bych volil spíš opravené Elite 3 na 128k (líbí se mi některá vylepšení ve hře i soundtrack). V tomto případě mi šlo primárně o testování opraveného počítače, který má jen 48k RAM.

Autor:  PotPalo [ 12.05.2022, 21:32 ]
Předmět příspěvku:  Re: nestabilní Elite na ZX Spectrum 48k?

S tým som experimentoval, ale samo sebou je nižšia hodnota adresy pre IM2 vždy FF. Niektoré zariadenia ju menia, napríklad niektoré AY moduly, a potom behá, a zistil som že podľa toho, na ktorom mieste sa práve vykonáva program v momente prerušenia. Solídny program má tabuľku prerušení vždy úplnú. Nejde o to, že mne to teraz tu funguje, ale o to, aby to fungovalo na každom inom počítači.

Pre I používam 59, je to viac kompatibilné než 57, kde v niektorých verziách ROM ešte zasahuje program. A vôbec, nebolo by od veci, keby si hra pred tým než použije nejaké I overila či je tam naozaj všade FF, a prípadne vypísala varovanie ešte pred štartom programu. Ale to by už bola iná serióznosť.

Autor:  zxcygnus [ 13.05.2022, 09:04 ]
Předmět příspěvku:  Re: nestabilní Elite na ZX Spectrum 48k?

Antony/DTA píše:
Myslím, že príčinou môže byť nekompletná tabuľka vektorov prerušenia.
Od adresy #FD00 po #FE00 by mal byť bajt #FE, ale nieje.
Na niektorých strojoch asi občas pri prerušení bude na datovej zbernici niečo iné ako #FF a občas sa to trafí na jeden z tých nenastavených vektorov.
jj, to bude skutečná příčina. Dle debuggeru ve Fuse emulátoru to běží v IM2.

Mimochodem stejný Sparrow, co nevydržel běžet ani 10 minut třeba i jen se samotným DivIDE bez další periferie po načtení Elite z "pásky" běžel přes noc a stále běží stabilně.
PotPalo píše:
...Solídny program má tabuľku prerušení vždy úplnú...
Souhlasím.
PotPalo píše:
Pre I používam 59, je to viac kompatibilné než 57, kde v niektorých verziách ROM ešte zasahuje program...
Spoléhat jakkoli na FF v ROM považuji za neprozíravé. Raději bych spoléhal na vlastní tabulku rovnou, než ověřoval. Ověřováním, abych pak stejně tabulku musel vytvořit se nic neušetří.

Autor:  Busy [ 13.05.2022, 10:05 ]
Předmět příspěvku:  Re: nestabilní Elite na ZX Spectrum 48k?

Antony/DTA píše:
Myslím, že príčinou môže byť nekompletná tabuľka vektorov prerušenia.
Od adresy #FD00 po #FE00 by mal byť bajt #FE, ale nieje.
Na niektorých strojoch asi občas pri prerušení bude na datovej zbernici niečo iné ako #FF a občas sa to trafí na jeden z tých nenastavených vektorov.
Suhlasim, tiez som si vsimol pripady kedy na zbernici pri preruseni nebolo #FF.

Stránka 11 Všechny časy jsou v UTC + 1 hodina [ Letní čas ]
Powered by phpBB® Forum Software © phpBB Group
http://www.phpbb.com/