I recorded the video and counted the frames
Thank you! So you didn't notice any difference.
Valójában rájöttem arra, hogy a lassító ciklus nem teljesen jó. A korábbi verzióban hallgattam a zenét a menüben, és az akadás időtartama mindig más volt. Arra gondoltam, hogy ez a várakoztatási ciklus miatt van így, ami akkor így nézett ki:
7900 DEF WARTEN
7910 FOR W1=1 TO WWW/FAST
7920 LET W2=RND(1000)+W1
7930 NEXT W1
7940 END DEF
Egyébként is már korábban is gyanús volt, hogy mintha nem lenne egyenletes a sebesség a játék alatt. (Aminek az oka nem lehet a sok számítás a játékhoz, mert minden lassítás nélkül száguld az egész, mint a huzat.) Arra gondoltam, hogy az RND függvény lefutási ideje nem mindig ugyanaz valamiért. Ezért a 7920-as sor helyett mást írtam be, és el is értem azt, hogy a zenében az elakadás időtartama mindig ugyanannyi volt.
Végül így írtam át a várakoztatási ciklust, most ez lett benne:
7920 LET W2=2*2*2*2
Próbálkoztam az RND helyett SQR, INT függvényekkel, de az SQR nagyon lelassította, az INT alig lassított valamit. Nem tudom, melyik művelet mennyi ideig tart, mire lefut, és mi lenne az, ami a leginkább az RND(1000)+W1-hez közelítő idő alatt fut le, ráadásul Zzzippel fordítva. Van erre valakinek ötlete?
Általában véve számomra nem megoldott probléma, hogyan lehetne egy Zzzippel fordított programnál elérni, hogy EP64-en és EP128-on is közel ugyanazzal a sebességgel fusson. (Fent a FAST változó értéke 128-as gépnél 1, 64-es gépnél 2, tehát EP64-en fele ciklus fut le, és még úgy is lassabb valamivel.)