A u mnie poszło. Trzeba było tylko zmienić nazwę na WORM.SYS i odpalać np. przez
DEVICE WORM /D 60 /FNie jesteś zalogowany. Proszę się zalogować lub zarejestrować.
Gearlynx 1.2.32 Aktualizacja emulatora Gearlynx z poprawkami VSync i lepszą obsługą kontrolerów.
NGA 0.9.3. Nowatorski asembler 6502 NGA automatyzuje zarządzanie pamięcią 6502, wykrywając błędy w fazie budowy.
Elite FireBird dla Atari 8-bit Zakończono prace nad portem gry Elite w wersji FireBird dla 8-bitowych komputerów Atari.
CAS2Audio 1.0.7 Aktualizacja narzędzia CAS2Audio przynosi odświeżony interfejs i lepszą obsługę plików taśm.
AGI-ANTIC i King's Quest na Atari Silnik AGI-ANTIC przenosi klasyczne King's Quest I na małe Atari.
atari.area forum » Posty przez mono
A u mnie poszło. Trzeba było tylko zmienić nazwę na WORM.SYS i odpalać np. przez
DEVICE WORM /D 60 /FMa, tylko trzeba trafić :P
Całkiem fajny pomysł, ale chyba na zupełnie nowy projekt. Powiem może jaki jest pomysł na mój wygaszacz i czemu powstał.
Pierwowzorem jest plemnik JBWa pod DOS-a (pecetowego). Widziałem go w redakcji Tajemnica Atari i tak mi się spodobał, że pomyślałem że może da się coś podobnego zrobić na Atari.
Wygaszacz ekranu na Atari (nie widziałem czegoś takiego w systemach na inne platformy 8-bit) ma za zadanie doprowadzać do równomiernego wypalania luminoforu telewizora w przypadku kiedy na dłużej nie dotykamy komputera i na monitorze znajduje się ciągle ten sam obraz (widziałem kiedyś zezłomowany monitor jakiegoś pecetowego terminala, na którym widniał pięknie wypalony prompt :]). Dlatego w systemie została przewidziana procedura, która po upływie ok 11 minut (256*128 ramek) odwraca cyklicznie kolory. Odbywa się to na przerwaniu VBLKI. Zaletą takiego podejścia do rzeczy jest to, że system nie zajmuje czasu procesora jakimiś czasochłonnymi działaniami dzięki czemu program użytkownika, który się w międzyczasie wykonuje, ma dla siebie praktycznie całą moc CPU.
Plemnik powstał z inspiracji i ze znurzenia systemowym trybem przyciągania uwagi. Stwierdziłem też że fajnie by było, gdyby nie trzeba było na niego czekać 11 minut, ale powiedzmy 3 (i taki właśnie był czas jego aktywacji w opublikowanej w TA wersji - taki czas zresztą jest nadal ustawiony domyślnie, choć w wersji dla SDX doszła parametryzacja). Miał za zadanie malować coś ciekawszego na ekranie nie obciążając zbytnio procesora tak, żeby program działający na komputerze nadal miał maksimum mocy obliczeniowej. Udało się to zrealizować w ten sposób, że cała procedura wygaszacza działa na dwóch przerwaniach: VBLKI mierzy jak dotąd czas bezczynności i ustawia krótszy czas oczekiwania przy opuszczeniu trybu, a na VBLKD realizowana jest procedura włączenia własnego ekranu ANTICa i skonfigurowanie GTIA tak, żeby pokazywał obraz z plemnikiem. Rysowany jest oczywiście tylko obraz składający się z 5 wierszy ekranu - reszta to puste linie dzięki czemu ANTIC przez większość czasu rysowania ekranu nie blokuje CPU. Ustawiane są wyłącznie rejestry sprzętowe dzięki czemu działanie plemnika jest niezauważalne dla pozostałych elementów systemu.
Twoje idea wygaszacza polegająca na uruchomieniu programu, który zajmie całkowicie procesor (mamy system jednozadaniowy) nasuwa mi na myśl program również autorstwa JBW, mianowicie XL Friend (popularnie zwany XLF a wchodzący w skład pakietu Quick Assemblera). XLF czekał na wciśnięcie klawisza SHIFT+CONTROL+1/2/3/4, zamrażał stan systemu i uruchamiał program przypisany do odpowiedniej kombinacji klawiszy - edytor, mapę znaków, kalkulator lub wglądownicę. Po skorzystaniu z programu stan systemu był odtwarzany i procesor wracał do wykonywania programu użytkownika. O ile XLF był bardzo przydatny i używałem go z DOS 2.5 i QA na porządku dziennym, o tyle wygaszacz ekranu zrealizowany w ten sposób (aktywowałby się oczywiście automatycznie po upływie wymaganego czasu bezczynności) zabierałby czas programowi użytkownika nie robiąc jednak nic konstruktywnego. No chyba, że zamierzasz wspomóc projekt SETI :) albo innego raka.
Nie zniechęcam jednak i gdybyś chciał coś takiego sam napisać służę pomocą.
@Yansen: A co taki loader miałby robić?:
- Instalować wygaszacz w systemie (różne rodzaje pamięci)? Robi to sama SDX.
- Podpinać go na VBLK(I/D), DLI, IRQ? To zależy od samego wygaszacza.
Mógłby uaktywniać i dezaktywować wygaszacz, ale to jest raptem kilka linijek kodu...
Też tak myślę.
Edit: Tym bardziej, że programowanie 816 to jak programowanie 6502C z nielegalami - nowy zestaw instrukcji i nowe możliwości do wykorzystania :]
Byłoby. Obecnie 286 bajtów zajmuje dlist i ekran. Kod w pamięci bazowej to 98 bajtów, w pamięci dodatkowej 313. DLPTR ma rejestr cień, GTIACTL i DMACTL też.
Gdyby wykorzystać sprajty pojawia się problem odtwarzania wartości rejestrów GTIA bo nie mają cieni w systemie dzięki czemu może to kolidować z innymi programami (wygaszacz działa przecież niejako "w tle"). Poza tym wygaszacz ma wygaszać obraz :) a nie malować niewiadomoco :] Obszar sprajtów w najmniejszej konfiguracji to $280 bajtów, które powinny być w podstawowym RAMie (ext nie da się użyć bo RAMBO nie pozwala na oddzielne adresowanie ANTICa i CPU, poza tym nie można zagwarantować, że na całym ekranie będzie włączony odpowiedni bank pamięci). Można zapisywać GRAFPx/M ręcznie, ale trzeba synchronizować się z rastrem co zabierze czas CPU. Jeśli użyjesz DLI, to trzeba analizować displaylistę i ją odpowiednio modyfikować. Same problemy.
Można zrobić wygaszacz dla VBXE - wtedy praktycznie cały kod może być ulokowany w pamięci VBXE (nie mówiąc o grafice).
Wersja 1.09 (.zip, .atr, .arc, .atr.bz2).
Dodałem obsługę sterowników _RAWCON (S_VBXE.SYS, RC_GR8.SYS) więc poprawnie działa już z VBXE.
Niedobry monitor, brzydki, tfu, tfu.
Ale to załaduje tylko jeden bajt, czy następne, w np. 130 XE też?
Podejrzewam, że dodatkową pamięć musisz sobie obsłużyć samodzielnie, aloader po prostu zawinie się wokół 64K i dalsze bajty będzie ładował od początku pamięci (ZPG).
Co kto lubi. O ile długość ma znaczenie :P
MyDłOS - czysta przyjemność.
Ten CMC by Datri jest tu: http://atari.daves.cz/Stereo_CMC_demo
@seban: FLD znam :) ładny efekt chyba jeszcze z '90. Ciekawi mnie tylko czy mogą sobie tak dowolnie, jak my zmieniać co linię skanningową/tekstową adres pamięci ekranu (co do bajta, bo to pomocne przy skrolu poziomym). Bo zdaje się pamięć ekranu leży sztywno w konkretnym wybranym banku RAM.
@grzybson: kiedy włączasz skrol poziomy w dlist, wtedy linia ma rozmiar 48 bajtów lub 24 bajty (tryby tekstowe podwójnej szerokości) choć na ekranie wyświetlana jest tylko część określana szerokością ekranu, adresem w lms i hscrollem.
Na C64 nie mają wyjścia - ekran zwęża się z 40 do 38 znaków, a my mamy displaylist i obszar 4kB.
Tokenami mogą być skoki do procedur a tokeny można umieszczać na stosie.
Ten akurat może mieć część programu w RAMie.
I bąbelków do szampana :P
Może i ja coś w podobie walnąć powinnam? :P
Wyobrażam sobie:
"Znam swoją wartość i nie dam się omamić byle komu. Musisz:
- mieć wszystkie konsole jakie wyszły na świecie od 1960,
- nabijać minimum milion punktów w MarioBros,
- słuchać i lubić chiptuny ze wszystkich układów Yamahy jakie kiedykolwiek wyszły,
- pikselować grafikę na poziomie najwyżej punktowanych prac na atarowskich party,
- umieć jeździć na parties po całym świecie i nie opuścić żadnego aż po grób."
Wysokie wymagania Innu ;P
Edit: "Zamierzam się pokazywać z Tobą na najlepszych komputerowych parties, więc nie możesz być zwykłym lamerem".
Eeee wzornictwo komputerów Atari do dzisiaj się broni. Nie widzę powodu na zmienianie takiego pięknego Falcona w peceta. Jakimś kompromisem byłaby obudowa osobnej paczki i klawiatury zachowującej piękny Atarowski wygląd :)
"Znam swoją wartość" :D Kobiety są zdecydowanie traktowane przez mężczyzn zbyt bezprzedmiotowo.
Póki co nikt nie ma SoundBoarda, ale niektórzy mają VBXE i na tym można odpalić rdzeń - jest w paczce na http://spiflash.org/block/15.html (cores/current/v1sndbrd.xbf i cores/current/v2sndbrd.xbf).
Konnektor z wyjścia VBXE należy podłączać:
- R = Left Audio Out
- B = Right Audio Out
- GND = GND
W VBXE1 należy dolutować szeregowo oporniki 75..120 Ohm do każdego wyjścia RGB.
@nosty: Być może chodzi o to: http://atariki.krap.pl/index.php?title=6502. Analizą jak to naprawić zajmowaliśmy się tu: http://www.atari.org.pl/forum/viewtopic.php?id=7800.
Mnóstwo tego! Bardzo dziękuję. Szczególnie fajne są poprawki zw z dźwiękiem (panorama)!
Poprawiłem nieco NEO player.
atari.area forum » Posty przez mono
Wygenerowano w 0.098 sekund, wykonano 22 zapytań