Ram-Cart

From Atariki

Revision as of 13:58, 23 maj 2022; view current revision
←Older revision | Newer revision→
Jump to: navigation, search

Grafika:Ramcart.jpg

Rozszerzenie pamięci RAM do Atari XL/XE występujące w formie cartridge'a, produkowane przez łódzki zakład Unnering Masters a dokładnie Piotra Janiszowskiego, który był twórcą i początkowym wykonawcą (wersje do 1MB). W późniejszym czasie dołączył Przemysław "GALTRON" Galanciak, który zajmował się projektowaniem płytek, wykonaniem ich wraz z montażem elementów. W projekcie pomagał Zenon "DIAL" Rakoczy który tworzył schematy, brał udział w testowaniu.

Pamięć jest podtrzymywana bateryjnie.

Pierwowzorem układu był SiDiCar.

Obecnie układ można też spotkać w wersji z przyciskiem RESET oraz w formie Double Ram-Cart, który różni się od zwykłej wersji tym, że ma podwojoną liczbę układów pamięci - co daje już przyzwoitą pojemność - 256KB, a nawet (przy drobnych modyfikacjach) do 1MB.

Spis treści

64 KB

RAM-CART 64k produkowany był w dwu wersjach różniących się zastosowaną pamięcią SRAM. Różnica polega na odmiennym sterowaniu wejściem zapisu E (/E), stąd w wersji 2 (oznaczonej na schemacie) pojawiły sie dodatkowe bramki logiczne 7403 typu otwarty kolektor (OC).

Płytka przygotowana była dla wersji 64k i 128k. W zależności od modelu dokonywano na niej modyfikacji. Model 64k - tylko dwie pamięci SRAM, tylko dwa oporniki 10k, brak zwory łączącej pin 12 układu 74174 i pinami 11,12 układu 7402 oraz pinami 9, 12 układu 7403. Te cztery piny połączone są zworą do +5V.

128 KB

Model 128k - nalutowane dwie dodatkowe pamięci SRAM, wlutowane dwa dodatkowe oporniki 10k, wlutowana zwora łączące pin 12 układu 74174 z pinami 11,12 układu 7402 oraz pinami 9, 12 układu 7403. Wejścia /CS dodatkowych pamięci połączone są odpowiednio z pinami 3, 6 układu 7403 (patrz schemat RAM-CART 128k wersja 2)

RAM-CART 128k produkowany był w dwu wersjach różniących się zastosowaną pamięcią SRAM. Różnica polega na odmiennym sterowaniu wejściem zapisu E (/E), stąd w wersji 2 (oznaczonej na schemacie) pojawiły sie dodatkowe bramki logiczne 7403 typu otwarty kolektor (OC).

Double Ram-Cart 2x128 KB / 256 KB

Dodatkowy przycisk P1 pozwala na wybór jednego z dwóch trybów pracy:

  • 2x128K - wtedy cartridge zachowuje się jak dwa oddzielne moduły 128K
  • 256K - cartridge zawiera 256K pamięci a bit 2 w rejestrze konfiguracyjnym służy do wyboru numeru banku

Dodatkowy przycisk P2 pozwala przełączać się między modułami 128KB w obydwu trybach pracy (!).

Grafika:Ramcart32mb.jpg

1 MB

Cartridge powstały na bazie wersji 128KB.

Z obudowy zniknęły przyciski P1 i P2, za to pojawiły się przyciski A, B i C pozwalające na wybór 1 z 8 modułów 128K.

W firmowej wersji cartridge-a bity 2, 6 i 7 służą do odczytu stanu przycisków A, B i C. Po rozkręceniu obudowy można zalutować zworki dzięki czemu przyciski A, B i C tracą swoją funkcję, a bity te służą do wybierania banków w pełnym obszarze 1MB.

2 MB

Rozszerzenie cartridge-a 1MB o dodatkowy 1MB.

Dodatkowy przycisk 1/2M na obudowie w kooperacji z A, B i C pozwala wybrać 1 z 16 modułów 128K (1 z 2 modułów 1M po przelutowaniu zworek ABC).

4 MB

Rozszerzenie cartridge-a 1MB o dodatkowe 3MB.

Dodatkowe przyciski D i 2/4M na obudowie w kooperacji z A, B i C pozwalają na wybór 1 z 32 modułów 128K (1 z 4 modułów 1M po przelutowaniu zworek ABC).

8, 16 i 32 MB

Rozszerzenie cartridge-a w wersji 1MB do 8, 16 i 32MB pamięci.

Zrezygnowano z przycisków A, B, C, D, 2/4M na rzecz wprowadzenia dodatkowego rejestru wybierającego bank pamięci (faktycznie wybierany jest bank 1MB) co pozwala na całkowicie programową konfigurację banków.

Programowanie

Bank pamięci cartridge-a liczy sobie 16KB i jest konfigurowana za pomocą rejestru sterującego BANKCTL znajdującego się pod adresem $D500 (aczkolwiek ze względu na uproszczony dekoder adresów jest on powtórzony na całej stronie $D5).

  • bit 0: włącza górne 8KB banku pamięci cartridge-a w obszarze $A000 - $BFFF;

w trybie RO (odczytu): 0 włączony, 1 wyłączony a w trybie RW (zapisu): 1 włączony, 0 wyłączony

  • bit 1: włącza dolne 8KB banku pamięci cartridge-a w obszarze $8000 - $9FFF; 1 włączony, 0 wyłączony
  • bit 2: ustawiony blokuje rejestr do momentu wyłączenia komputera (w module 64/128K/2x128K), przełącza bank pamięci w module 256K oraz 8/16/32M, a także w zmodyfikowanych 1/2/4M, w fabrycznych wersjach zwraca stan przycisku A
  • bit 3: przełącza bank pamięci we wszystkich rodzajach cartridge-y
  • bit 4: przełącza bank pamięci we wszystkich rodzajach cartridge-y
  • bit 5: przełącza bank pamięci w cartridge-u 128/256K i 1/2/4/8/16/32M
  • bit 6: przełącza bank pamięci w cartridge-u 8/16/32M oraz zmodyfikowanym 1/2/4M, w fabrycznym zwraca stan przycisku B
  • bit 7: przełącza bank pamięci w cartridge-u 8/16/32M oraz zmodyfikowanym 1/2/4M, w fabrycznym zwraca stan przycisku C

W cartridge-ach 64K i 128K rejestr był przeznaczony tylko do zapisu. W pierwszych wersjach Double Ram-Cart 2x128/256K i Ram-Cart 1M od Zenona początkowo również tak było, choć w późniejszych egzemplarzach został udostępniony również do odczytu, a dodatkowo Zenon zmodyfikował konstrukcję i wykorzystał pełny dekoder adresów (rejestr sterujący dostępny jest wtedy tylko pod adresem $D500).

W cartridge-ach 8M, 16M i 32M pod adresem $D501 wprowadzono dodatkowy rejestr MODSEL służący do wyboru modułu 1M:

  • bit 0: przełącza moduł pamięci w cartridge-ach 8/16/32M
  • bit 1: przełącza moduł pamięci w cartridge-ach 8/16/32M
  • bit 2: przełącza moduł pamięci w cartridge-ach 8/16/32M
  • bit 3: przełącza moduł pamięci w cartridge-ach 16/32M
  • bit 4: przełącza moduł pamięci w cartridge-ach 32M
  • bit 5-7: zarezerwowane dla większych pojemności

Oprogramowanie

Wszystkie potrzebne pliki do obsługi RAM CART-ów, które zostały opisane w instrukcjach są dostępne poniżej.

Plik z oprogramowaniem w formacie ATR

Bibliografia

Schematy

Odnośniki zewnętrzne

Zobacz też

Personal tools