...Oto stróż, rasy ostrej...
Wygląda dość poczciwie.
Nie jesteś zalogowany. Proszę się zalogować lub zarejestrować.
Silly Venture 2k25 SE - już wkrótce! Tylko do 21 lipca możesz zamówić koszulkę z okazji SV 2k25 SE
Nowy firmware 1.5 dla SDrive-MAX Ulepszony tryb szybki i poprawki kaset w nowej wersji firmware
Ice-T 2.8.2 Nowa wersja Ice-T dla 8-bitowego Atari już dostępna - poprawki i nowe funkcje
Galactic Panic - nowa przygodówka na ST Darmowa gra point and click na Atari ST - ponad 100 ekranów przygody.
Nowa wersja ARIFE Tool od PVBest73 Uaktualniono uniwersalne narzędzie do analizy obrazów ROM i dysków Atari
atari.area forum » Posty przez mono
...Oto stróż, rasy ostrej...
Wygląda dość poczciwie.
Świetnie przygotowane. Nigdy nie miałem turbo w magnecie, a używałem go w normalu wiele, wiele lat. Może bym się kiedyś jednak skusił. Twoje manuale zasiewają ferment... :)
Ale chyba niebieskim...
Partia Kobiet zwana niekiedy Partią Ekshibicjonistek?
Generowanie własnych błędów i przerywanie długotrwałych operacji klawiszem BREAK.
http://a8.fandal.cz/detail.php?files_id=39 kawałek 2 - nawet nie wiedziałem, że to DM.
To prawda dump niedobry jest. Tylko jakie wziąćformaty? Yerzu polecał na ZX formaty .STC i .PT3.
Edit: "Formaty" typu .AY, .SID czy .SAP nie nadają się do niczego pożytecznego. Emulacja/wirtualizacja motoroli na 6502 też jakoś mi się nie uśmiecha.
A tam wielkie słowa.
.PSG to jest zwykły dump rejestrów AY (stąd wielki rozmiar pliku). Format prościutki (PSGFormat.rar): http://bulba.untergrund.net/progr_e.htm
Dokumentacja jest trochę nieścisła, ponieważ nagłówek naprawdę zajmuje 16 bajtów, lecz 4 pierwsze to identyfikator formatu i wersja, a reszta ztcw jest niewykorzystana.
A program odtwarza pliki w formacie PSG1 z prędkością 1 na ramkę (50 fps).
Plik jest ładowany do RAM, potem do XRAM. Evie testowane jest pod adresem bazowym $D2C0 - można podać inny adres przełącznikiem /A addr (jeśli kiedykolwiek w przyszłości zajdzie taka potrzeba).
/Q 1.77 lub /Q 2.00 włącza odpowiedni zegar bazowy, /2 dzieli go jeszcze na pół.
Testowo zrobiona jest jeszcze panorama /P pan podawana w tradycyjny spektrumowski sposób (ABC, CAB, itd.) pozwalająca na przyporządkowanie kanałów AY do kanałów stereo.
Muzyka nie jest zapętlana - odtwarzanie kończy się po odegraniu kompletnego pliku lub po osiągnięciu końca dostępnej pamięci (jeśli cały plik nie zmieścił się w pamięci dostajemy odpowiednią informację i player przystępuje do odtwarzania).
Warto zauważyć, że sterownik RAMDISK.SYS zabiera XRAM więc można udostępnić więcej pamięci rekonfigurując go w CONFIG.SYS. Informacja o ilości wolnej pamięci dla programów dostępna jest zleceniem MEM /X.
Plik .PSG można otrzymać odpalając dowolną muzykę np. pod emulatorem fuse http://fuse-emulator.sourceforge.net/. Za pomocą File>AY Logging>Record startujemy nagrywanie .PSG, poprzez File>AY Logging>Stop zatrzymujemy. Taki plik należy potem sobie przenieść dowolnym sposobem na Atari i odtwarzać.
Format .YM również jest dumpem, ale bywa inaczej zorganizowany (co w sumie nie przeszkadza, bo i tak wszystko jest naraz załadowane do pamięci) - .PSG jest strumieniem i można by go było odtwarzać strumieniowo bez wykorzystania pamięci. .YM ma też parę ficzerów typu SIDSound, odtwarzanie n x na ramkę i sample.
Na mojej stronie dostępne są pliki .ARC, .ATR i .ZIP. psgplaye.ext to ostatnia wersja, dostępna jest też wersja wcześniejsza psgplaye-0.1.ext - trzeba sobie zmodyfikować link.
Tam też jest GCR.
dodano implementację AY-3-8910 czy tam YM2149
Ile poziomów głośności ma obwiednia w implementacji? Jeśli 16, to mamy AY, jeśli 32 to YM (tam są tylko dodatkowe poziomy "między") :D
Od strony programisty zarówno AY, jak i YM się niczym nie różni (głośność kanału bez obwiedni jest zawsze 16 stopniowa).
Po głębszym zastanowieniu jednak przyznaję Ci rację - wystarczy analizować czy nie próbujesz ulokować bloku w niedozwolonym miejscu i się zbuntować. W mocy jednak pozostaje argument o ładowaniu xBIOSa przez DOS celem odpalenia programu.
Ależ przejdzie. Wystarczy, że na początku pliku znajdą się rozkazy:
isb $??FF,x ;$FFFF
inc $??FF,x ;$FFFE
dcp $??FF,x ;$FFFD
dcp $??FF ;$FFFC
lax $??FF,y ;$FFFB
lax $??FF ;$FFFA
aso $??FF ;$FFF0
isb $??DD,x ;$DDFF
lax $??FB,y ;$FBFB
Choć to prawie same niepubliczne, to zawsze chętny do oszukania DOSa wyprowadzi go w maliny.
Sam mógłbyś (podejrzewam, że z przewrotną przyjemnością :D) tak zacząć pierwszy blok programu, żeby DOS poszedł się kochać - choćby tym INCem. Stąd właśnie moja propozycja o zdefiniowanie nagłówka. Mniej mi chodzi o to żeby DOS zadziałał poprawnie, ale żeby użytkownik nie musiał restartować komputera przy próbie uruchomienia programu, którego w danym środowisku nie będzie mógł poprawnie odpalić. Mając identyfikator nawet głupi DOS może załadować Twojego xBIOSa i zrobić to, czego żąda od niego user.
Jeśli się nie da, to trudno - zawsze pozostanie rozszerzenie pliku.
No wiesz. Zafundowanie użytkownikowi zwisu komputera nie jest takie fajne, a jak posługujesz się zwykłym nagłówkiem ATARI DOS, to trzeba rozbudowywać loader, żeby przypadkiem się zabezpieczyć np. przed ładowaniem w obszar nie przeznaczony dla usera (co robi np ATARI DOS 2.5). Kiedy masz sygnaturę wtedy wszystko jest jasne i proste - rozpoznajemy i uruchamiamy (jak umiemy), lub nie (jak nie umiemy). Masz tam zresztą swoje metody do zmiany adresów INI/RUN i oidp kiedyś mogły też być inne nagłówki bloków (ale może źle pamiętam). I parę innych fajnych możliwości, których nie dają znane DOSy.
Edit:
nic nie trzeba robic przeciez, ten DOS, jak i inne DOSy, zachowa sie podobnie - rozlozy rece
No owszem owszem, ale niech to zrobi w sposób cywilizowany a nie przez zwis.
Niewiele się różni, zresztą jak słychać komponenty te same! :D XE to był zawsze porządny sprzęt!
F16? Pin! - ukradłeś armii silnik od samolotu? A pomyślałeś o offsecie?
Komu? Odpowiedź jest przecież oczywista - loader w SpartaDOS X :)
*1 - plik nie ma identyfikatora pliku binarnego dzieki temu tylko xB bedzie mogl to zaladowac, dos wyswietli blad.
A może w ogóle zrobiłbyś dla plików xBIOSowych osobny nagłówek identyfikujący. Dzięki temu można by łatwo je identyfikować i ładować, albo i nie.
O ile wiem obecnie zajęte są:
$FFFF (ATARI)
$FFFE (Sparta)
$FFFD (Sparta)
$FFFC (Sparta)
$FFFB (Sparta)
$FFFA (Sparta)
$FFF0 (ACX)
$DDFF (BasicXE)
$FBFB (AlfAssembler)
Może coś w rodzaju $4278 :)?
Edit: Czy DOSy (i user) identyfikują sobie tylko po rozszerzeniu (powiedzmy .XB)?
Hahaahhaha. Jim Power to TYLKO z Amigi daje radę!
Fajne, fajne.
1. Jak zorganizowane są pliki na dyskietce? Czy żeby poprawnie działało xBIOS_GET_FILE_OFFSET/xBIOS_SET_FILE_OFFSET plik powinien być zapisany w kolejnych sektorach czy też może być rozsiany po całym dysku (korzystasz z linków na końcu sektorów czy nie)?
2. Co robi zmiana katalogu bieżącego xBIOS_CHANGE_DIR? I pochodne - jak otwierasz plik? Czy przeszukujesz kolejne wpisy (64 lub 128 pozycji katalogu (jak wiadomo katalog w ATARIDOS zajmuje zawsze 8 kolejnych sektorów) i czytasz kolejne sektory katalogu)?
3. Na czym polega indeksowanie plików? Czy po prostu wyszukujesz odpowiedni plik w katalogu i ja (jako programista) mogę sobie wtedy zachować jego pozycję dzięki czemu mogę w dowolnej chwili czytać dowolny sektor i resztę pliku (i korzystać z xBIOS_SET_FILE_OFFSET)?
4. Jak wygląda zmiana xBIOS_SET_FILE_OFFSET np. z $1000 na $0 - czy potrzebujesz odczytać z katalogu gdzie jest początek pliku i przeliczyć pozycję (lub przelecieć się po sektorach i przeczytać wszystkie linki aż do chwili kiedy znajdziesz odpowiedni sektor pliku)?
Fajny pomysł z tym indeksowaniem - zaciekawiło mnie jak to działa i jakie założenia przy budowie dyskietki z .atr poczyniłeś.
Edit: A uchwyty! Przepraszam - uciekło mi trochę postów w wątku i przypadkiem zobaczyłem. Ale nadal ciekawi mnie zmiana offsetów i zakładana organizacja pliku na dysku.
Jad ujada. Rzadko się zresztą udziela na forumie. Arystokracja.
A gdzie duchowieństwo? Szlachta służy do szlachtowania ;> Atarowska społeczność stanowa.
Bo mieli najładniejsze kibitki :P Słowiańska dusza...
00:05:54:Jest pan na pustyni, idzie po piasku...
00:05:57:To początek testu?
00:05:58:Tak.|Jest pan na pustyni, wszędzie piasek...
00:06:01:nagle spogląda pan w dół...
00:06:02:Na jakiej?
00:06:03:Która to pustynia?
00:06:04:To nie ma żadnego znaczenia.|To tylko hipoteza.
00:06:07:-Ale co ja tam robię?|-Może ma pan wszystkiego dość, może...
00:06:09:chce być pan sam. Kto wie?
00:06:13:Patrzy pan pod nogi i widzi żółwia.
00:06:15:-Zbliża się w pańskim kierunku...|-Żółwia?
00:06:21:-Wie pan co to jest żółw?|-No jasne.
00:06:23:No, widzisz.
00:06:25:Nigdy nie widziałem żółwia.
00:06:29:Ale rozumiem co ma pan na myli.
00:06:30:Schyla się pan i obraca go na grzbiet.
00:06:34:To pan wymylił te pytania,|panie Holden?
00:06:36:Czy może kto je dla pana ułożył?
00:06:38:Żółw leży na grzbiecie,|smaży się na słońcu...
00:06:41:Przebiera nożkami, próbuje obrócić się,|ale nie daje rady.
00:06:44:To niemożliwe bez pańskiej pomocy.|Ale pan mu nie pomaga.
00:06:47:Jak to, nie pomagam mu?
00:06:48:Nie pomaga pan mu.
00:06:50:Dlaczego, Leon?
00:06:59:To są tylko pytania.
Polecamy również wietnamską (chińską?) restauracyjkę nieopodal szkoły na terenie osiedla niedaleko Biedronki tudzież innego przybytku popkultury. Pyszne jedzenie z sosikami którym za każdym razem się raczymy (a Candle to nawet kiedyś zeżarł podwójną porcję i potem trawił jak wąż tego Hindusa, co wracał narąbany do domu). Niestety nie pamiętam jak się nazywało :/
Miłośnikom schabowego polecam knajpkę "U Ludwy" w centrum Głuchołazów. Specjalność zakładu to schabowy z kością, barszczyk z botwinki i groszek z marchewką.
http://atariki.krap.pl/index.php/NTSC_vs_PAL
http://atariki.krap.pl/index.php/Rejestry_POKEY-a
Edit: Mam nadzieję, że masz świadomość iż:
1. Każde przerwanie obsługiwane jest PO ZAKOŃCZENIU bieżącego cyklu rozkazowego (a rozkaz potrafi trwać 2..7 cykli).
2. Zapis do WSYNC BLOKUJE PROCESOR a więc i moment przyjęcia przerwania do 105 cyklu podczas generowania linii.
3. Ponieważ ANTIC jest procesorem nadrzędnym każdy cykl jego dostępu do pamięci zablokuje dostęp do pamięci procesora (albo pracę procesora - nie jestem tego 100% pewny, trzeba by to uściślić).
Jeśli chcesz więc precyzyjnie odpalać przerwania to masz możliwość synchronizowania startu licznika (zapis do WSYNC i do STIMER), no a później trzeba by precyzyjnie kontrolować co robi processor i ANTIC i tak sobie ułożyć program, żeby przerwanie było przyjmowane bez różnych za każdym razem opóźnień związanych z zakończeniem wykonywania rozkazu. A jeśli precyzyjnie nie ma być no to problem z głowy i nie ma co myśleniem zbytnim głowy psować.
atari.area forum » Posty przez mono
Wygenerowano w 0.089 sekund, wykonano 14 zapytań