TeBe coś kiedyś pisał, że chciałby móc prosto korzystać z całej pamięci w Atari.
W tutorialu cc65 też coś o tym wspomniał.
W związku z tym, że program testowy doszedł mi w cc65 do 14kB i chociaż mam 320kB (RAM-cart) to i tak nie mogę odpalić Numena proponuje zrobić coś takiego:
Sterownik typu EMM386, ładowany w DOS w jakimś autostarcie, maksymalnie niezależny od rodzaju i wersji DOSa, pozwalający na allokację pamięci RAM-carta lub XMS w sposób uniwersalny - niezależnie od posiadanego sprzętu.
Główne funkcje:
- allokacja n banków (wynik: lista - nr banku, adres)
- zwolnienie listy banków (nr banku; nr banku)
- aktywacja / dezaktywacja banku
- informacja o aktywnym nr banku
- możliwość zablokowania przełączenia banku
- informowanie o dostępnej ilości banków (wszystkich / wolnych) i ich rozmiarze
- informowanie o rozpoznanym typie rozszerzenia (może być ciąg znaków + kod)
Allokowane bloki powinny przechowywać informację o tym, że są zaalokowane na trwale lub tymczasowo (np. dla RAM-dysków). Dzięki temu po wyłączeniu kompa RAM-cart nadal miałby poprzydzielaną pamięć - ale tylko dla RAM-dysków lub programów zapisujących coś na stałe.
Kiedyś pisałem sterownik do lepszego E: ale już zapomniałem jak się to robi. Poza tym nie wiem, czy taka informacja była by przydatna w tym projekcie.
Pytania:
- czy coś takiego już istnieje?
- od czego zacząć zgłębianie Atari, żeby coś takiego zrobić (chodzi bardziej o integrację z DOSem, przełączenie banku to chyba banał)
Zenon dystrybuuje kilka DOSów zrobionych specjalnie dla RAM-carta. Czy ktoś wie na czym polegała trudność zrobienia uniwersalnego sterownika do M: ładowanego osobno pod DOSem?
Przecież jest coś takiego jak RAM-CART Handler - TA 10/93, (http://tajemnice.atari8.info/10_93/10_93.html) - więc chyba jest to do zrobienia?
-----
Miłym dodatkiem byłaby obsługa RAMu pod ROMem jako dodatkowego banku.
-----
Odpowiedzi na pytanie: po co?
- żeby móc pisać uniwersalne programy wykrzystujące całą dostępną pamięć
- żeby móc uruchomić RAM-dysk i program wykorzystujący XMS jednocześnie
- żeby nie przerabiać wszystkich po kolei DOSów tylko po to, żeby obsługiwać nowe
rozszerzenie pamięci
-----
Założenia dodatkowe
- soft powinien móc obsłużyć kilka rozszerzeń na raz
- musi być możliwa współpraca z programami nie korzystającymi z tego
- obsługa do 256 banków