101

github zaktualizowany

102 Ostatnio edytowany przez w1k (2026-09-22 11:46:55)

fps -> 8.00

Post's attachments

fps8.png 35.88 kb, nikt jeszcze nie pobierał tego pliku. 

Tylko zalogowani mogą pobierać załączniki.

103

No, brawo, czekam na nową wersję zatem.

KMK
? HEX$(6670358)

104

tutaj:
http://turiecfoto.sk/atari/doom-test/doom22-9-2026.zip

105 Ostatnio edytowany przez drac030 (2026-09-22 19:32:10)

FPS-y:

Altirra 14 MHz: 6.06-6.25
Antonia II: 6.66-6.89

EDIT 2:

Rapidus 20 MHz: 8.69-9.09
Rapidus 40 MHz: 11.76-12.50

EDIT:

Ale jest błąd, którego przedtem nie było: program nadpisuje paletę VBXE nr 0 (ciekawostka, że na emulatorze nie).

EDIT 3:

Rozwałka palety nr 0 VBXE nie występuje na Rapidusie ani na emulatorze, tylko na Antonii II. Bardzo ciekawe.

KMK
? HEX$(6670358)

106

dzięki drac030, naprawiłem to. wypuszczę następną wersję, gdy fps będzie powyżej 10.

107 Ostatnio edytowany przez drac030 (2026-09-24 01:17:50)

Jeszcze jedna rzecz: czołówkę i panel dolny zmieniłeś na pełną rozdzielczość (320x2nn pikseli).

Czy nie da się reszty obrazów statycznych zrobić tak samo? Mam na myśli "Help", który się wyświetla, kiedy wybieramy "Read This!" z menu głównego, a także ekrany wyświetlane po zakończeniu hangaru: to wszystko nie jest animowane, więc chyba spokojnie może być w pełnej rozdzielczości?

KMK
? HEX$(6670358)

108 Ostatnio edytowany przez w1k (2026-09-24 06:58:45)

udało się

edit: systematycznie robię kilka rzeczy o 320

109

..nowa kompilacja. fps 9,52-10 fps. drac030, bardzo dziękuję, pokazałeś mi sposób, dzięki któremu silnik został zoptymalizowany może o 50%.

przyspieszyłem też ładowanie gry o około 50%. ATR zmniejszył się z 7 MB do 3 MB.

http://turiecfoto.sk/atari/doom-test/doom-27-9-2026.zip

110 Ostatnio edytowany przez drac030 (2026-09-27 14:12:40)

Cieszę się, że mogłem pomóc.

FPS: 7.14-7.40 (Antonia II)

Czas ładowania z HDD: 1 minuta i 9 sekund (poprzednia wersja: 1 minuta, 45 sekund).

Ciekawostka. Z ekranu startowego (poniżej) pierwsza linia, ta z czerwonym tekstem na białym tle, na emulatorze wyświetla się cała, a na Atari widać tylko dolną połowę (dolne 4 linie skaningowe).

https://www.atari.org.pl/forum/misc.php?action=pun_attachment&item=13856

EDIT: tak to wygląda na Atari:

https://www.atari.org.pl/forum/misc.php?action=pun_attachment&item=13855

Post's attachments

doom_start_atari_3.jpg 102.64 kb, nikt jeszcze nie pobierał tego pliku. 

doom_start_emulator.jpg 25.98 kb, nikt jeszcze nie pobierał tego pliku. 

Tylko zalogowani mogą pobierać załączniki.
KMK
? HEX$(6670358)

111

http://turiecfoto.sk/atari/doom-test/do ... -2026a.zip

ok, poprawiono. Naprawiono również inne błędy logiczne, zwłaszcza w e2l2. Poza tym, przeciwnicy mogą się teraz teleportować. Nie poruszałem się już z fps.. jeśli macie jakieś pomysły, mogę spróbować:)

112 Ostatnio edytowany przez drac030 (2026-09-27 21:45:56)

Jeszcze jest taki kwiatek: kiedy do menu wejdzie się przerywając grę, wybierze się Read This! i przejrzy całość, po ostatniej planszy wyskakują na moment śmieci. Kiedy wejdzie się tamże przed startem gry, tego nie ma.

Co do pomysłów, muszę znaleźć "chwilę" czasu na przejrzenie plików źródłowych, co w tym tygodniu będzie bardzo trudne.

KMK
? HEX$(6670358)

113

ok, sprawdzę to i popracuję nad innymi przyspieszeniami

114

Można też popracować nad pewnymi formalnościami, np.

1) żeby sprawdzał na początku, czy procesor jest 65C816, a jeśli nie, wyświetlał stosowny komunikat zamiast się zawieszać.

2) żeby sprawdzał na początku, czy w komputerze jest odpowiednia ilość pamięci liniowej, a jeśli nie, to jak powyżej

3) żeby to samo robił z VBXE

4) żeby działał również wtedy, kiedy VBXE jest zmapowane na $D7xx, a nie tylko wtedy, kiedy jest na $D6xx.

KMK
? HEX$(6670358)

115

dzięki, poprawiono. dodano gammę do gry (klawisz 8), ulepszono walkera, wyrzutnię rakiet, szczegóły tekstur poprawiono o kilka procent :)

https://turiecfoto.sk/atari/doom-test/d ... 9-2026.zip

116 Ostatnio edytowany przez drac030 (2026-09-29 10:36:54)

Wersja na Antonię II jest szybsza (8 FPS zamiast 7.40), ale jest niestabilna: program za pierwszym razem zawiesił mi się na czarno od razu po wejściu na pierwszy poziom, za drugim razem to się nie zdarzyło, ale regularnie się wiesza, jeśli z gry wejdzie się do menu i wybierze "Read This!". W wersji "normalnej" to się nie dzieje.

Drugi feler, który mają obie: za szybka reakcja na przyciśnięcie spustu joysticka w menu, co skutkuje tym, ze kliknięcie w New Game często od razu wybiera też pierwszy poziom z menu następnego. Na wersji wczorajszej też to zauważyłem.

KMK
? HEX$(6670358)

117

naprawię to, w tym tygodniu będę miał w domu Atari z Antonią II, więc będzie mi łatwiej to przetestować

118 Ostatnio edytowany przez drac030 (2026-09-29 11:13:33)

Tak po prawdzie problemy ze stabilnością mogą dotyczyć nie tylko wersji na Antonię: poprzednia wersja też mi się raz zawiesiła, konkretnie przed wejściem do drugiego hangaru. Nie udało mi się tego potem powtórzyć.

KMK
? HEX$(6670358)

119

wow.. będzie grane ;)

Kontakt: pin@usdk.pl

120 Ostatnio edytowany przez drac030 (2026-09-29 11:37:05)

Jak zawiesić wersję na Antonię II, po kolei:

1) włączyć komputer na zimno
2) załadować grę (u mnie: ATR z partycji SpartaDOS X)
3) wybrać New Game, potem poziom pierwszy
4) po pokazaniu się widoku na hangar, wcisnąć F
5) zwis na czarno
6) brak obrazu z VBXE, trzeba wyłączyć i włączyć komputer, żeby go przywrócić

Za następnym razem zadziałał, ale zawiesił się po zebraniu pierwszego przedmiotu. Tym razem nie na czarno.

PS. W zwykłej wersji wpadłem do środka schodów i nie mogę wyjść :))

EDIT: popsuta jest też muzyka na końcu hangaru.

KMK
? HEX$(6670358)

121

poprawka i kilka drobnych błędów

wiem o losowych awariach i zawieszaniu się, muszę to sprawdzić.
jaki jest teraz czas ładowania?

https://turiecfoto.sk/atari/doom-test/d ... -2026a.zip

122

Czas ładowania: ok. 44 sekund.

KMK
? HEX$(6670358)

123 Ostatnio edytowany przez drac030 (2026-09-29 16:01:03)

Program się wywala, bo robi takie rzeczy:

https://www.atari.org.pl/forum/misc.php?action=pun_attachment&item=13857

Mamy tu REP #$30: przełączenie na 16-bitowe rejestry AXY, dalej program wykorzystuje 16-bitowy rejestr Y do chwilowego przechowania czegoś, co odczytał sobie z tablicy znajdującej się pod $03E085, po czym idzie SEP #$10, czyli przełączenie na 8-bitowe rejestry XY (a akumulator zostaje 16-bit).

Natomiast procedura obsługi IRQ (m.in. timera1) znajdująca się pod $00041A zapisuje na stosie, a potem odtwarza, tylko rejestr X. Jeśli przerwanie strzeli akurat w chwili, kiedy rejestry XY przełączone są na 16 bitów, starszy bajt rejestru Y jest tracony.

Procedurę przerwania trzeba poprawić tak, żeby przechowywała na stosie oba rejestry, X i Y.

Post's attachments

doom_krasz.png 4.8 kb, nikt jeszcze nie pobierał tego pliku. 

Tylko zalogowani mogą pobierać załączniki.
KMK
? HEX$(6670358)

124

nic jeszcze.. wiele prób naprawy, ale błąd pozostaje

125

Jak możesz, wklej tu procedurę obsługi IRQ. Ona się nazywa snd_irq i jest w module sound.asm.

KMK
? HEX$(6670358)