276

ziała, spróbuję się tym pobawić :)

277

Znalazłem jeden błąd, ponadto powinna się nieco poprawić estetyka, tj. edycja slotu nie powoduje teraz przerysowania całego ekranu od nowa, tylko tej jednej pozycji. Ruchy prawo-lewo można teraz robić strzałkami kursora (TAB-em też).

Przy okazji załączam "fabryczny" ROM z 7 X 2026 (z menu datowanym na 24 sierpnia).

Post's attachments

ant2.gz 5.01 kb, liczba pobrań: 6 (od 2026-10-15) 

factory-2026-10-07.gz 193.18 kb, liczba pobrań: 7 (od 2026-10-15) 

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

278 Ostatnio edytowany przez flashjazzcat (2026-10-15 11:40:45)

SIDE3 has its own integrated read/write DOS (for FAT) which is roughly API compatible with SpartaDOS. If there are issues with any executable which requires CIO file access, please let me know the details. It can help to add an EXE or COM extension to any program which happens to open CIO channels during the load process, since the method used to load XEX files is different.

279

Kolejna wersja testowa. Dorzuciłem mu, żeby "skasowany" slot OS-u nie był w całości wypełniany wartościami $FF (jak to jest w przypadku slotów BASIC-a), ale żeby zawierał szczątkowy kod wyświetlający komunikat, że nic tu nie ma, i haltujący procesor, który w przeciwnym wypadku pałętałby się po pamięci, robiąc nie wiadomo co.

Post's attachments

ant2.gz 5.17 kb, liczba pobrań: 7 (od 2026-10-16) 

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

280

Jako że nie ma żadnych pretensji, ogłaszam wersję 1.0

KMK
? HEX$(6670358)

281 Ostatnio edytowany przez Jacques (2026-10-20 10:00:37)

Wczoraj testowałem Barbariana od Vegi na 600XL + Antonia 2 + SubCart. Ustawienia szybkości CPU na Stock, OS też XL/XE.
Cała instalacja u mnie to wyjęcie MMU/CPU i obsadzenie Antonią 2.
.CAR oryginalny oraz ten w formacie MaxFlash i niestety są jakieś krzaki na ekranie (artefakty w menu, a później większe w trakcie dema/rozgrywki), ktoś ma podobnie?

282 Ostatnio edytowany przez tebe (2026-10-20 10:18:41)

testowałeś Barbariana bez Antoni wcześniej?

może Barbarian zmienia w rastrze rejestry GTIA, to wymaga dokładnego docyklowania, może mieć znaczenie kiedy zapis jest za wcześnie albo za późno

p.s.
sprawdziłem grę pod Altirra przy 14Mhz, ekran tytułowy jest OK, pokolorowany jest PMG co najwyżej, podczas rozgrywki widać najpewniej brak WSYNC przy zmianie zestawu znaków (CHBASE), dla stock 6502 takie numery potrafią przejść

kiedyś Rapidus też tak się zachowywał nawet gdy był zapis do WSYNC, Pasiu to poprawiał

jeśli Antonia też ma te poziome glitchowe linie tzn. że albo nie został użyty WSYNC, albo jest użyty WSYNC ale Antonia nie zwalnia i zapisuje za szybko rejestr sprzętowy CHBASE (mimo ustawień stock)

Post's attachments

barb.png 8.99 kb, nikt jeszcze nie pobierał tego pliku. 

Tylko zalogowani mogą pobierać załączniki.
*- TeBe/Madteam
3x Atari 130XE, SDX, CPU 65816, 2x VBXE, 2x IDE Plus rev. C

283

Jacques napisał/a:

Wczoraj testowałem Barbariana od Vegi na 600XL + Antonia 2 + SubCart. Ustawienia szybkości CPU na Stock, OS też XL/XE.
Cała instalacja u mnie to wyjęcie MMU/CPU i obsadzenie Antonią 2.
.CAR oryginalny oraz ten w formacie MaxFlash i niestety są jakieś krzaki na ekranie (artefakty w menu, a później większe w trakcie dema/rozgrywki), ktoś ma podobnie?

Wklej zdjęcia z krzakami i daj linka albo wklej plik z grą do pobrania, bo na Atarionline różnych wersji Barbariana jest od metra.

Ceterum censeo Unionem Europaeam esse delendam.

284 Ostatnio edytowany przez Jacques (2026-10-20 11:49:30)

Tak na szybko link - obie wersje stąd:
https://vega.atari.pl/main-page/barbarian/

Drobne artefakty (migające prążki) pojawiają mi się już na menu z muzyką, a potem w trakcie rozgrywki już sporo większe pionowe krzaki na wysokości postaci.
Zdjęcie/film mogę zaprezentować wieczorem.

285 Ostatnio edytowany przez Jacques (2026-10-20 19:43:57)

Poniżej dwa filmy z odpalania Barbariana: z SIDE3 oraz SubCarta.
Na SIDE3 są widoczne sporadyczne poziome zakłócenia, które powyżej pokazał tebe.
Ładując to samo z SubCarta jest gorzej, zakłócenia trochę inne, ale bardziej intensywne, w dodatku prążki pojawiają się już podczas odtwarzania sampla na menu.

https://youtu.be/tjhfxZ7jrYc?is=a1Cg01DLKnFC8d2b
https://youtu.be/TDsNd5M0lL4?is=zGuovqwn4HM5nfFi

Oczywiście Antonia2 ustawiona na CPU speed = stock.

286 Ostatnio edytowany przez tebe (2026-10-20 21:21:11)

te glitche z grafiką PMG zachowują się tak jakby na chwilę rejestr odpowiedzialny za DMA PMG był zerowany a potem przywracany

przełączanie banków pamięci carta jest po stronie SIDE3, SubCart-a, musi przechwycić zapis $D500... i przełączyć bank, co robi z tym czasie Antonia? czy SIDE3, SUBCart kłóci się o dostęp do szyny danych z Antonia?

jeśli bez Antoni ta gra działa z CAR na SIDE3, SUBCart bez glitchy to stawiam na konflikt Antoni

*- TeBe/Madteam
3x Atari 130XE, SDX, CPU 65816, 2x VBXE, 2x IDE Plus rev. C

287

tebe napisał/a:

jeśli bez Antoni ta gra działa z CAR na SIDE3, SUBCart bez glitchy to stawiam na konflikt Antoni

Ogólnie działa i uruchamiałem bez problemu na 130XE z U1MB na przykład.
Natomiast tutaj bez Antonii 2 nie sprawdzę, ponieważ to 600XL i Antonia 2 musi mi dawać 64KB ;-)

288

Chciałem zebrać informacje od osób posiadających Antonię 2 oraz VBXE w komputerze: czy nowy rdzeń 1.27 Wam działa?

pomidor

289

Jeszcze nie uaktualniałem, muszę znaleźć czas.

Pamięć studenta ma charakter kwantowy - student wie wszystko, ale jednocześnie nic nie pamięta.
- Kilka(naście?) pudełek z klawiszami i światełkami. I jeden Vectrex, żeby nimi wszystkimi rządzić.

290

mam 1.27, antonia 2 -nedziala

291

Soa#1

KMK
? HEX$(6670358)

292 Ostatnio edytowany przez drac030 (2026-10-21 13:16:55)

Wczoraj, kiedy jeszcze nie było jasne, że komputer w1ka jest padnięty, napisałem prosty test pamięci VBXE. Załączam, może się komuś przyda.

Test jest (powinien być) niedestrukcyjny, można (a właściwie nawet to jest wymagane) go uruchomić mając do VRAM-u załadowany np. sterownik S_VBXE i aktywny tryb 80-kolumn, nie powinno to powodować niczego złego (może być lekki ślad na ekranie, kiedy test przechodzi przez XDL).

Odpowiedzią jest albo "no errors", albo tabelka 32x16 pokazująca, które kilobajty są podejrzane.

Uruchamiać pod SpartaDOS X.

PS. Jak to uruchomić bez ładowania sterowników:

1) z Toolkita UTILS>SYSUTIL> wyciągamy program SL.COM

2) jeśli VBXE mamy na stronie $D6, podajemy z CP komendę SL VBXEBASE $D640

3) uruchamiamy tester

Post's attachments

vramtst.c0m 449 b, liczba pobrań: 5 (od 2026-10-21) 

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

293

1.26 vs 1.27
sexy, sexy

Post's attachments

126.jpg 506.34 kb, nikt jeszcze nie pobierał tego pliku. 

127.jpg 901.23 kb, nikt jeszcze nie pobierał tego pliku. 

Tylko zalogowani mogą pobierać załączniki.

294 Ostatnio edytowany przez Simius (2026-10-21 18:20:50)

Z Barbarianem jest u mnie taki problem, że nie mając pod ręką żadnego gotowego do użycia programowalnego kartridża, zrobiłem go sobie ad hoc z 4Mbit EPROM-u, zaprogramowanego plikiem ściągniętym ze strony autora (po wycieciu 16 bajtów nagłówka), podłączonego, jak w zwykłym kartridżu, z tą różnicą, że adresy od A13 w górę podłączone są do rejestru banku działającego tak:

library ieee;
use ieee.std_logic_1164.all;

entity bankregister is
    port
    (
        a0 :  in  std_logic;
        a1 :  in  std_logic;
        a2 :  in  std_logic;
        a3 :  in  std_logic;
        a4 :  in  std_logic;
        a5 :  in  std_logic;
        a6 :  in  std_logic;
        a7 :  in  std_logic;
        cctl :  in  std_logic;
        phi2 :  in  std_logic;
        a13 : out std_logic :='0';
        a14 : out std_logic :='0';
        a15 : out std_logic :='0';
        a16 : out std_logic :='0';
        a17 : out std_logic :='0';
        a18 : out std_logic :='0'
    );
end bankregister;

architecture cartridge of bankregister is
    begin
    process(phi2,cctl)
        begin
        if falling_edge(phi2) then
      if cctl = '0' then
        a13 <= a0;
        a14 <= a1;
        a15 <= a2;
        a16 <= a3;
        a17 <= a4;
        a18 <= a5;
      end if;
    end if;
    end process;
end cartridge;

Tak przynajmniej wynika z opisu struktury kartridży JCart czy Atarimax. Niestety, czegoś jeszcze chyba nie wiem, bo gra się niby uruchamia, grafika i dźwiek wydają się poprawne, ale zamiast sylwetek graczy mam tylko jakieś białe prostokąty, jak na zdjeciu poniżej. Komputery bez rozszerzeń.

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

Post's attachments

barbarian.jpg 555.19 kb, nikt jeszcze nie pobierał tego pliku. 

Tylko zalogowani mogą pobierać załączniki.
Ceterum censeo Unionem Europaeam esse delendam.

295

A ja zamiast robić nowy cartridge, zrobiłem nowy emulator na FPGA :)

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

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

Co do Twojego problemu, AI mówi:
Brakuje wyłączania cartridge'a. To najpewniej jest cały problem.

Jak działa Barbarian: to cartridge typu J(atari)Cart, 256 KB w 32 bankach po 8 KB.

Dostęp do $D500-$D57F wybiera bank o numerze z dolnych 7 bitów adresu i włącza cartridge.
Dostęp do $D580-$D5FF (A7 = 1) wyłącza cartridge. Wtedy linia RD5 idzie w stan niski i pod $A000-$BFFF widać RAM Atari.

Gra mocno z tego korzysta. Program w cartridge'u to spakowany plik XEX z małym loaderem: loader na chwilę włącza bank (STA $D500,X), czyta bajt, wyłącza cartridge (STA $D580) i zapisuje bajt do RAM-u. Sporo danych gry ląduje właśnie pod $A000-$BF89, a potem gra działa z tego RAM-u przy wyłączonym cartridge'u.

Co jest nie tak w jego układzie:

Nie ma sterowania RD5, cartridge jest zawsze widoczny. RAM pod $A000-$BFFF jest więc stale zasłonięty przez EPROM, a dane, które loader tam zapisuje, idą w próżnię.
Ignoruje A7. STA $D580 u niego nie wyłącza cartridge'a, tylko przełącza na bank 0.

Poprawiona wersja: potrzebny jest dodatkowy pin RD5 do złącza cartridge'a, zamiast na sztywno podłączonego +5 V jak w zwykłym cartridge'u. RD5 ma być w stanie wysokim po włączeniu zasilania, żeby Atari w ogóle zauważyło cartridge.

Poprawiony kod:
library ieee;
use ieee.std_logic_1164.all;

entity bankregister is
    port (
        a    : in  std_logic_vector(7 downto 0);   -- A0..A7
        cctl : in  std_logic;                      -- aktywne 0 ($D5xx)
        phi2 : in  std_logic;
        bank : out std_logic_vector(5 downto 0);   -- A13..A18 EPROM-u
        rd5  : out std_logic                       -- do RD5 złącza (1 = cartridge widoczny pod $A000)
    );
end bankregister;

architecture cartridge of bankregister is
    signal b  : std_logic_vector(5 downto 0) := (others => '0');  -- start: bank 0
    signal en : std_logic := '1';                                  -- start: włączony
begin
    process(phi2)
    begin
        if falling_edge(phi2) then
            if cctl = '0' then
                if a(7) = '0' then          -- $D500-$D57F: wybór banku + włączenie
                    b  <= a(5 downto 0);
                    en <= '1';
                else                        -- $D580-$D5FF: wyłączenie
                    en <= '0';
                end if;
            end if;
        end if;
    end process;
    bank <= b;
    rd5  <= en;
end cartridge;

Dodatkowe uwagi:

Stan po resecie: układ ustawia bank 0 i "włączony" tylko przy włączeniu zasilania. Gdyby po resecie Atari Barbarian nie startował ponownie, trzeba podać sygnał resetu do CPLD albo zrobić reset przez wyłączenie zasilania. W bankach 1-17 tego pliku jest mała procedura, która przełącza z powrotem na bank 0, więc zwykle i tak działa.
Zatrzaskiwanie na opadającym zboczu PHI2: to działa, o ile CCTL i adres trzymają się jeszcze chwilę po tym zboczu. Na prawdziwym Atari zwykle tak jest, ale jeśli wybór banku będzie łapał się niepewnie, lepiej zatrzaskiwać w trakcie PHI2 = 1.
EPROM 4 Mbit przy pliku 256 KB: A18 jest wtedy niepotrzebne, a górna połowa EPROM-u nieużywana. Gra używa tylko banków 0-31, więc to nie przeszkadza.

Post's attachments

barbarian1.jpg 277.47 kb, nikt jeszcze nie pobierał tego pliku. 

barbarian2.jpg 269.01 kb, nikt jeszcze nie pobierał tego pliku. 

Tylko zalogowani mogą pobierać załączniki.

296 Ostatnio edytowany przez Simius (Dzisiaj 14:56:57)

Z poczatku zrobiłem wyłączanie, ale sztuczna cwiercinteligencja napisała, że jest definitywne, co zinterpretowałem, jako permanentne. OK, zobaczymy. Z możliwym upływem adresu i cctl nie ma problemu, bo wstępnie mam jeszcze rejestr zapisywany zboczem narastającym. Nie ma tego w powyższym kodzie, żeby nie zaciemniać sprawy.

Ceterum censeo Unionem Europaeam esse delendam.

297

Jak nie masz czasu walczyć, to zrób etykietę to podeślę Ci PCB do jakiegoś SICa czy Maxflasha czy DCarta czy innego S/XEGS-a