Dzięki chłopaki! Bardzo wiele mi się rozjaśniło.
@laoo, jak ma się sprawa z kartridżem do testów? Użyłeś jakiegoś?
Nie jesteś zalogowany. Proszę się zalogować lub zarejestrować.
20. odcinek kursu programowania u Larka Larek wraca z okrągłą, dwudziestą częścią swojego popularnego kursu pisania gier na Atari.
ELITE Atari 8-bit! Dostępne demo portu gry ELITE (wersja dyskowa z BBC Micro) na komputery Atari XL/XE.
BBC BASIC dla Atari XL/XE BBC BASIC w wersji 3.10 dostępny na Atari XL/XE! Port stworzył Ivo van Poorten.
Altirra 4.40-test23 Kolejna testowa wersja Altirry przynosi poprawki w emulacji VBXE i usprawnienia w zarządzaniu firmware.
X. Basque Tournament of Atari 2600 Euskal Retro Association podsumowuje 10. edycję Baskijskiego Turnieju Atari 2600.
atari.area forum » Posty przez qbahusak
Dzięki chłopaki! Bardzo wiele mi się rozjaśniło.
@laoo, jak ma się sprawa z kartridżem do testów? Użyłeś jakiegoś?
hmmm, niby tak... tylko widze tu ze potrzebny jest bufor na rozpakowana tablice x... do zrobienia jesli mamy jakis bufor ogolnego przeznaczenia ale jesli nie to bitsream jest lepszy.
512 bajtów na tablicę X, różnie dla tablic Y i różnie dla Z. A nie możesz czytać bajt po bajcie ze skompresowanego strumienia danych, aż znajdziesz te, co chcesz? (przeszukiwanie "w locie")
Wg mojego doświadczenia nie znajdziesz lepszej o rząd wielkości metody przy rzadkich tablicach ponad powyższe algorytmy. A jeśli masz jakiś szczególny przypadek - można wybierać/optymalizować. Metastruktury też trochę zajmą, a czym bardziej skomplikowane rozwiązanie, tym dłuższy kod, więc nie warto IMO wchodzić w zbyt skomplikowane rzeczy.
Możesz też iść siłowo z kompresją.
Masz 256 skompresowanych streamów w tablicy A indeksowanych po x (po wskaźnikach)
Rozkompresowujesz k-ty stream dostajesz 256 wskaźników indeksowanych po y
Rozkompresowujesz l-ty stream z docelową zawartością.
Metoda prosta i skuteczna oraz tania O(k+l+m), likwiduje redundancję pustych miejsc. Zakładam statyczność tablicy.
A ile sobie Wać Pan życzysz za prototypa?
Tyle co za produkcyjny.
(Widzę wysyp kartridży na forum :))
Ukończyłem prace nad rozszerzoną wersją JCart - 1MB (8Mb).
Chciałem, aby każdy miał kartridż w budżecie, więc nie używałem fancy śmancy układów, tylko zwykłe 74xx.
Na zdjęciu jeszcze prototyp, na dniach mam zamiar zamówić wersję ostateczną.
Właściwości:
- elementy TTL/HCT (3 układy HCT)
- zgodność w bankowaniu z AtariMAxFlash, boot z banku 0.
- pozłacane styki
- możliwość adresowania właściwie dowolnych kości PLCC32
- zapis z poziomu Atari lub programatorem (przed wlutowaniem kości)
- możliwość tworzenia gier "pod dosa" (z pewnymi ograniczeniami)
- 1 lub 2 kości 39SF0x0, 29SF0x0, 28SF0x0, 39F0x0, 29F0x0, 28F0x0, 27C0x0
- możliwość hardwareowego zablokowania zapisu na pierwszym flashu
- standardowo na razie montuję i obsługuję 39sf040
- tak, działa Space Harrier i zapisuje wynik (testowane na 39SF040)
- zgodna z obudową Sikora, Kradex Z7 i Maszczyk KM20B
- i teraz uwaga, CENA:
-- zmontowana płytka hurt powyżej 25 sztuk - 30 zł netto + koszt pamięci + koszt obudowy
-- zmontowana płytka hurt 5-25 sztuk - 35 zł netto + koszt pamięci + koszt obudowy
-- zmontowana płytka detal 40 zł netto + koszt pamięci + koszt obudowy
-- płytka z podstawkami 60 zł netto + jw.
Czyli generalnie mogę zapewnić pamięci i obudowy, ale nie jest to wymóg.
Dodatkowo możliwość adaptacji gry w wersji dosowej.
Powinny być dostępne jeszcze w tym roku.
Mam co najmniej 3 prototypowe egzemplarze aktualnie w nadmiarze, mogę kogoś uszczęśliwić :) (cynowane pady i bez hardware switch off, dziurka do obudowy Sikora jeszcze jest prototypowa)
oryginal wyglada identycznie. z teo co pamietam nie bylo tylko folijki na stykac.
jestem... pozytywnie zaskoczony !
Była.
Te blaszki przeżywały lata. A w razie czego kupuje się taktsłicze, te większe, i wymontowuje z nich blaszki. Pozostaje ściąć krawędź tej blaszki tak, aby nie zwierała bez nacisku i jak nowy!
Generalnie, o ile plastik w rączce wytrzyma, to będzie dobry joystick. Chyba sobie kupię na gwiazdkę :)
@dely - z tamtych czasów? Wykrzyknik jest pisany na kolanie (jeden z najstarszych loaderów) i jest co najmniej o 2 bloki za długi, a pewnie i o 3. Poza tym trzeba by wyjść z SO, aby takie coś obsłużyć - a przez brak numeru bloku w pojedynczym rekordzie stracić kompatybilność. Chyba, że jednocześnie zabezpieczyć przed skopiowaniem, lub zrobić kopier dosfile <> kaseta.
Wtedy nie było takich guru od Atari, którym by zależało. A wręcz zależało, aby się nie kopiowało (więc powinna powstać opcja loader + niestandardowy blok danych, co ZTCP powstało, nie pamiętam nazwy, ale nie takie sprytne, żeby cofać taśmę i czytać dalej)
Z tymi pamięciami to jest tak, że kiedyś miałem 800XL i często trzeba było czekać kilkanaście sekund (zwłaszcza, jak już komputer wpadł w taki dołek). Aż dorobiłem pstryczek do kartridża Action! i tym pstryczkiem się posiłkowałem w celu szybkiego zimnego resetu. Teraz testuję różne rzeczy na stock 65XE i nie mam takich problemów - wystarczy wyłączyć na sekundę i zawsze wstaje OK.
A ja bym wymienił/wywalił profilaktycznie kondensatory z toru cyfrowego: C75,C76,C77,C78, a także przeleciał miernikiem R81-R84 oraz R128-R131. Skoro ta płyta z każdym SIO2SD nie bangla, a SIO2SD z każdą inną OK....
Jak się bawić - to tak, owszem, ale jak się po prostu kabla chce mieć, to już nie bardzo.
Trzeba kupić piny i kabel, a to z przesyłką już będzie jakieś 25 złociszy. Potem dłubanina z oprawianiem, druk, skladanie, śrubki...
Zabawa, Panie, zabawa.
I nie, nie lansuję Lotharka, ale On te wtyki zrobił dużym jednorazowym kosztem z niepewnym zwrotem, po prostu myślę, że to fajnie kupić taki kabel, który ewentualnie też można odsprzedać, jak się znudzi :)
To jest deficytowy towar (jeśli chodzi o odzysk), a Lotharek sam robił wtyczki w
Chinach. 50 zł to jest bardzo dobra cena. A gdzie masz te zbyt docenione?
A ja bierę bez względu na wzgląd.
Niestety, promki niby na 100 lat, ale już po 30 już zapominają, zwłaszcza, jeśli przechowywane na słońcu lub powyżej 20 stopni.
Już kilka takich miałem, pojedyncze bajty się zmieniają. Jak otworzysz jakimś cudem obudowę, będzie widać jakich zamienników użyć, ew sczytać i pobawić się.
Akurat mam taki kartridż z Archonem i nie wiem, czy ma on śrubkę, a jeśli to na pewno nie magnetyczną.
W związku ze zbyt małą różnorodnością propozycji :) proponuję przedłużyć termin do niedzieli. Mam kilka pomysłów, a pewnie ktoś jeszcze wpadnie na coś oglądając powyższe.
Mam problem. Chciałem sobie poeksperymentować z paddlesami pod emulatorem.
Emulator Atari800MacX, 5.0.4, to taka trochę nakładka na atari800.
Podpinam analogowy joy usb,piszę progrmamik:
10 ? PTRIG(0),PTRIG(1),PADDLE(0),PADDLE(1):GOTO 10i mam odczyty z analoga pion/poziom - paddle1/paddle0
ALE. PTRIG0 zwraca 0 jak wychylę w lewo dla PADDLE0>169
a PRTIG1 zwraca zero, jak wychylę w prawo o podobną wartość (centrum jest w 128) Nie umiem przyporządkować przycisków PTRIG do przycisków na padzie. Niby mogę wpisać mapowanie USBJoystickButton 1 -> Joystick Left i 2 dla right, ale to nie działa. (w real sprzęcie PRTIG(0) zwraca zero dla podpiętego joysticka w lewo a, PTRIG(1) zwraca 0 dla podpiętego joysticka przesuniętego w prawo)
Co zrobić aby zadziałało? Czy ktoś mógłby sprawdzić, jak to działa pod Altirrą np?
>=$80 używają też bejziki, Actiony, inne takie. Jak są uruchomione.
@Fox, dzięki za głos.
Jak się pisze z głowy - to zamiast NMIEN wpada DMACTL :)
A mógłbyś tak w formie krótkiego artykułu opisać co i jak? Jak widzisz, jest z tym jakiś-tam problem, dużo procków, dużo wszystkiego.
To, że NMIST nie zależy od NMIEN to jest raczej oczywiste z istoty natury rzeczy.
Podejrzewam na 99%, że procka antrykota zadziała na wszystkim i zawsze chyba, że NMI się wstrzeli i skasuje te bity pomiędzy sta a bit. Ale to raz na tysiąc lat.
sta nmires bit nmist bvc *-3
Jeśli to działa zawsze, to jest to najlepsze rozwiązanie, bo do testu jest użyte to, co zostało zaprojektowane w tym celu.
@mono, co o tym myślisz?
vcount się zmniejsza?
No... chyba tak raz na vbl?
Chodzi o to, że są jeszcze komputery SECAM, NTSC, PAL, VBXE, z przyspieszeniami etc.
Czy to na wszystkim ma szanse zadziałać? Nie jestem altirowy.
co będzie dla vcount=0?
Zawiśnie na pierwszym beq, a następnie zaczeka na moment, gdy vcount się zmniejszy (carry się nie wyzeruje). Nie?
Przy każdej zmianie vcount w górę, bcc skoczy, bo carry się zeruje - odejmujemy większą od mniejszej.
Przy zmianie w dół w acc mamy coś dużego, odejmujemy coś małego, 0, 1 czy cuś, carry zostaje ustawione.
Jest procka by Fox:
w1
lda $d40b
bmi w1
w2
lda $d40b
bpl w2Ma ona 10 bajtów i nie obsługuje NTSC, działa z DMACTL=0.
Napisałem inną 10 bajtów. Ona obsługuje NTSC (w teorii, bo nie testowałem). Czy jest tu jakiś haczyk? Czy zawsze zadziała?
Opiera się ona na monotoniczności vcount. Działa z DMACTL=0.
rep
lda vcount
@
cmp vcount
beq @-
bcc repTo się przerwanie wyłącza i można bezkarnie wsadzać kartridż :)
dobrze zaprojektowany system tablice wektorow trzyma w ram, niestety XL OS do nich nie nalezy
nie przesadzaj, jest to chyba jeden z bardziej elastycznych systemów na 8-bitowce.
Ciekawa jest ta siłowa metoda z podmianką skoku do SIO. Odrzuciłem ją w pierwszej chwili, bo może przypadkowo coś graficznego zamienić, muzycznego i ogólnie jakieś dane. Na szczęście w kodzie takie sytuacje nie występują; tylko w danych.
Niestety, skok do DSKINT skutkuje skokiem do SIOINT w romie, ale można ją okroić i już. Jest już to gdzieś rozwiązane? Czy trzeba sobie napisać?
@mono - jest tak jak piszesz :) Czasem jest jakaś sprytna/niestandardowa metoda. O newdev też myślałem, ale to też rodzi problemy.
Da się podmienić procedurę SIO bez ruszania romu? Tak, jak można dodać handler urządzenia?
atari.area forum » Posty przez qbahusak
Wygenerowano w 0.037 sekund, wykonano 23 zapytań