Trochę odkopuję temat, bo właśnie uruchomiłem swoje pierwsze od lat małe Atari i potrzebowałem na szybko wykombinować coś do wgrywania programów (no dobra, gier i demek).
Złożyłem więc SIO2Arduino... i zaczęły się schody - to się nie kompiluje w nowym Arduino IDE. Pomijam już fakt, całkowitej przebudowy biblioteki FatSD dostępnej w repozytorium, bo akurat miałem wersję zgodną z sio2ard, ale sam kod jest napisany pod Arduino IDE 1.0 i brakuje w nim deklaracji używanych funkcji. Aby więc ułatwić potencjalnym zainteresowanym uruchomienie tego cudu techniki załączam poprawione źródła i właściwą wersję biblioteki FatSD.
Kolejna uwaga - przycisk SELECT, wbrew opisowi jest aktywny w stanie niskim, zatem ma zwierać do masy (i nie trzeba go podciągać rezystorem do plusa, bo w ATMedze jest wewnętrzny pull-up).
Swoją wersję wykonałem na Arduino Pro Mini, a właściwie na jego chińskim klonie, płytce z gniazdem SD i konwerterze poziomów logicznych 3.3V-5V (bardzo często się o nim zapomina, a karty SD "nie lubią" 5V na liniach SPI). Całość zmieściła się w obudowie KM57. Kabel z wtykiem SIO pozyskałem ze zdezolowanego magnetofonu XC12, który dostałem od kolegi. Prawdę powiedziawszy nawet nie sprawdziłem czy działał (nie mam kaset), ale poza brakiem klapki wyglądał na kompletny, nawet paski były całe, był za to paskudnie pożółkły i miał dołożoną jakąś płytkę z UL1111 i UCY74LS00.
Tak się to prezentuje:
Teraz krótko o obsłudze - SIO2Arduino wykorzystuje loader z projektu SDrive ale z pewnymi ograniczeniami. Obsadzić można do 4 stacji (D1 do D4), ale działa tylko D1:, można natomiast przekładać obrazy dyskietek przy pomocy sprzętowego przycisku. Jeśli przypisze się obrazy do D1 i D2, to po naciśnięciu przycisku w D1 wyląduje obraz ze "stacji" D2, kolejne naciśnięcie przywróci pierwotny układ. Niestety nie działa też wyświetlanie długich nazw plików ani wyszukiwanie.
Po obsadzeniu wirtualnych stacji obrazami dyskietek, trzeba wykonać reboot, można do tego użyć klawisza RESET lub INVERT. W przypadku gier nie korzystających z BASICa trzeba wcisnąć i przytrzymać OPTION (aż nie pokaże się kursor) po puszczeniu RESETu (w przeciwnym razie braknie pamięci i gra/demo nie uruchomi się).
Aby ponownie uruchomić loader trzeba na chwilę wyłączyć zasilanie (lub zresetować Arduino). Znów wbrew opisowi dołożony przycisk na pinie 3 nie pełni funkcji RESET (montującej obraz dysku z loaderem) lecz SELECT.
Post's attachmentsAUTORUN.ATR 130.02 kb, liczba pobrań: 21 (od 2019-06-06)
sdfat.rar 116.01 kb, liczba pobrań: 16 (od 2019-06-06)
SIO2Arduino-PATCHED.zip 27.41 kb, liczba pobrań: 17 (od 2019-06-06)
Tylko zalogowani mogą pobierać załączniki.
Moja kolekcja: Atari 1040STe (4MB), Atari 1040STfm (4MB, BLiTTER, AT-ONCE+), Atari 800XE (SIMM EXP 1MB), Atari 800XL (RAMBO XL 256kB), Atari 600XL (64kB), Sinclair ZX SPECTRUM+ (48kB), TIMEX Computer 2048 (48kB), Commodore A600 (2MB+4MB, HDD CF 4GB), Commodore C64C.