START
_______________

Atari 16-bit

Floppy Drive
DIN14-IDC34
adapter


ACSI-SCSI interface

Video digitizer faST

MegaSTe SCSI
internal interface

ST RAMcart

Peter Putnik's
ACSI-CF Interface


Sack's PC-speed
remake project


Vortex AT-ONCE
remake project


Sack's AT-speed
remake project


MagicSAC+
remake project


ICD ST Hard Drive
Adapter BD
remake project


ICD Advantage SCSI+
remake project


ICD AdSCSI Micro
remake project


Realtime
Clocks


Matrix M110
GAL Pack


ICD Advantage SCSI
remake project


ICD Micro MegaSTe
adaptation project


Emagic LOG3
Interface remake


C-Lab Combiner
remake

 

MegaSTe SCSI
internal interface

OSTRZEŻENIE:
urządzenie opisane poniżej zostało "odtworzone" z natury
i do czasu wykonania działającej kopii na podstawie tego
 opisu należy całość traktować z pewną rezerwą, ponieważ
może zawierać błędy uniemożliwiające działanie.

Po potwierdzeniu poprawności ostrzeżenie usunę.
 

     Przedstawiam wewnętrzny interface (adapter) ACSI <-> SCSI, który jest montowany
wraz z dyskiem wewnątrz obudowy komputera Atari serii Mega STe. Projekt zajął sporo
czasu, który został pochłonięty przede wszystkim na żmudne odtwarzanie ścieżka po
ścieżce połączeń na dwustronnej płytce obwodu drukowanego. Po odtworzeniu płytki
w następnym kroku odtworzyłem schemat interfejsu.

     Projekt zacząłem pod wpływem artykułu PerePutnika o modyfikacji interfejsu SCSI
montowanego wewnątrz MegaSTe. Zawziąłem się, udało mi się kupić poszukiwany
interfejs i  odtworzyć kawałek sprzętu...
     Publikacja przeróbki jest możliwa dzięki zgodzie autora otrzymanej w korespondencji
email.

     Materiały wraz z opisami zamieszczam poniżej.


     Strona górna płytki interfejsu. Układy z naklejonymi oznaczeniami SCSI i ACSI
     to układy PLD
RICOH EPL16P8BP


     Strona dolna płytki interfejsu

     Do tego aby odtworzyć połączenia potrzebowałem jeszcze kilku "pomocy"


     Zdjęcie płytki wykonane aparatem prześwietlającym promieniami Roentgena


     Czarnobiałe zdjęcie strony spodniej z odwróconymi kolorami dla lepszej czytelności


     Czarnobiałe zdjęcie strony górnej z odwróconymi kolorami dla lepszej czytelności

     Powyższe trzy fotki wydrukowałem w powiększeniu i korzystając z programu PCB
zacząłem przenosić najpierw położenie poszczególnych układów scalonych, następnie
rezystorów, kondensatorów i złączy z zachowaniem odległości i proporcji. Po ustawieniu
tych elementów zacząłem przenosić połączenia do programu PCB korzystając ze zdjęć
i także z będącego pod ręką rzeczywistego interfejsu. Po przeniesieniu połączenia
odpowiadająca ścieżka była zaznaczana na wydruku jako gotowa. Strona spodnia jest
bezproblemowa, ponieważ wszystkie ścieżki są widoczne. Gorzej ze stroną górną, bo
wiele ścieżek przebiega pod układami scalonymi. Są dwa sposoby. Jeden to całkowite
rozlutowanie układu i odsłonięcie strony górnej płytki. Drugi to użycie multimetru do
odszukania połączeń pomiędzy punktami na PCB. Wybrałem sposób drugi ze względu
na to, że chciałbym zachować interfejs w stanie oryginalnym. Zajmuje to bardzo dużo
czasu, ale daje w miarę pewny wynik. W rezultacie otrzymałem kompletny rysunek:


     Wydrukowałem go sobie w dużym formacie i w taki sposób dlatego, że miał być
użyty do odtworzenia schematu ideowego połączeń pomiędzy elementami, które zostały
najpierw umieszczone w programie Eagle, a potem na podstawie odtworzonej PCB linia
po linii łączyłem wyprowadzenia układów w taki sposób jak na PCB. Efektem końcowym
jest poniższy schemat:

     Paczka z danymi technicznymi zastosowanych układów scalonych

     Paczka z wsadami układów PLD U9 i U11 - w archiwum znajdują się pliki ACSI oraz SCSI zarówno oryginalne jak i przekonwertowane do zaprogramowania układów PAL albo GAL. Są tu także odtworzone równania logiczne (equations)

Pliki PLD w chwili obecnej nie zostały sprawdzone w działaniu,
proszę więc o ewentualne przetestowanie bądź poczekanie na testy wykonane
przeze mnie.

     Paczka plików PDF z rysunkiem ścieżek strony górnej oraz dolnej i wymiarami
płytki. Proszę sobie na podstawie podanych wymiarów doskalować obrazy tak, aby
po wydrukowaniu na posiadanej drukarce wielkość zgadzała się z oryginałem
(tak - mniej więcej...)
     Otwory układów przewlekanych średnica: 0,7mm, otwory przelotek średnica: 0,3mm.
Przelotki lutowane kynarem. Układy i inne elementy SMD lutownicą małej mocy.
.

http://atari.8bitchip.info/modmste1.html

     Pod powyższym linkiem znajduje się opis modyfikacji interfejsu do współpracy z
dużymi dyskami. Artykuł został przetłumaczony w zasadzie w całości.
    
     Konstrukcja interfejsu umożliwia dostęp jedynie do 1GB na dysku SCSI. Kiedy był
projektowany - taka ilość była więcej niż wystarczająca (pamiętacie Gatesa i 640KB).
Obecnie coraz trudniej znaleźć dyski kilkugigabajtowe 50-pin. Zdecydowanie łatwiej
o 18GB i więcej 80-pin. Limit 1GB pojemności wynika z faktu, że interfejs umożliwia
wysyłanie tylko pięciobitowych poleceń SCSI o kodach od $0 do $1F. Moim zamiarem
(PPutnik) było umożliwienie wysyłania komend sześciobitowych. Dzięki analizie budowy
podobnego interfejsu i serii eksperymentów udało się to zrobić. Sam korzystam z dysku
18GB a teoretyczny limit to 2000GB.


     Aby dokonać modyfikacji potrzebne są dwie zmiany na płytce interfejsu od strony
elementów. W prawym rogu widać oznaczenie A - należy przeciąć połączenie pomiędzy
nóżką 5 układu scalonego U5 a otworkiem przelotki. Następnie należy połączyć nóżki
układów scalonych przewodem -> 5 układu U5 z 2 układu U7 jak na zdjęciu powyżej.
     Pod układem U9 - ACSI PLD widać oznaczenie B - należy wyciągnąć z podstawki
nóżkę 6 i przewodem wykonać połączenie wiszącej w powietrzu nóżki z nóżką 3 tego
samego układu. Proszę odszukać na schemacie odpowiednie połączenia i wprowadzić
opisaną modyfikację - wszysiko okaże się proste do wyjaśnienia - jak to działa.
     Zmiana A rozszerza komendę SCSI do sześciu bitów, a B zapewnia to, że interfejs
będzie aktywowany niezależnie od stanu bitu 5 w fazie komendy SCSI command phase

     Z tą modyfikacją związane są problemy:

TOS 2.06 blokuje napęd SCSI gdy ten nie ma zainstalowanego autoboota. Taka sytuacja
ma miejsce tylko raz - gdy chcemy zainstalować sterownik z flopa, a zablokowany dysk
na to nie pozwoli, ponieważ napęd musi być READY. Rozwiązaniem jest podłączenie
przycisku pomiędzy linię SCSI RESET a masę. Naciśnięcie przycisku zresetuje dyski i
będzie można zainstalować sterownik autoboot, w kodzie którego są rozwiązania unie- możliwiające zablokowanie napędu SCSI. Zablokowanie się nie zdarzy nawet gdy
wciśnie się Alt przy starcie w celu zablokowania bootowania dysku...

     Zmodyfikowany interfejs w dalszym ciągu pracuje z istniejącymi sterownikami, np.
HDDriver, ICD, jednakże tylko do 1GB. Aby pokonać to ograniczenie trzeba użyć:

    
Plik sterownika napisany przez PerePutnika - instalowany na dysku
    
opis autora znajduje się w pliku archiwum

Specyfikacja sterownika-opis możliwości:

- Partycjonowanie na PC (ze SCSI) używanie na ST i PC - łatwe przenoszenie danych.
  Niezbędny jest BigDOS (dołączony w paczce).
- Obsługuje do 14 partycji na dysku SCSI przy użyciu zmodyfikowanego interfejsu.
- Maksymalnie dostępne 2000GB przy użyciu komend z adresowaniem 32-bit LBA.
- Maksymalny rozmiar partycji FAT16 to 2GB - partycji boot także (brak limitu).
- Wsparcie dla XHDI - może pracować z FAT32 pod Mintem.
- Autoboot z dyskow z partycjami DOS, łatwa i szybka instalacja z floppy.
- Dowolna partycja może zostać ustawiona jako C z łatwym przełączaniem
- Opcja tworzenia HOLE przez ładowanie sterownika - wieksza zgodność ze starymi grami i niektórymi programami.
- Szybkość transferu do 1000-1250 KB/s zależnie od interfejsu i podłączonego dysku.  
- Brak wsparcia dla zmiany dysku wymiennego bez restartu

Generator parzystości:

    Większość nowszych dysków SCSI będzie pracować tylko gdy bit parzystości jest
ustawiony. Opisywany interface nie obsługuje takich dysków ponieważ brak mu w
konstrukcji odpowiedniego układu. Z pomoca przychodzi cyfrowy generator parzystości
74HCT280 albo 74ACT280, który należy połączyć z interfejsem przewodami według
poniższej tabelki:

     Pin 74HCT280         SCSI Bus       Funkcja

           1                14             D6
           2                16             D7
           3                -         niepodłączone
           4                GND       masa zasilania
           5                -         niepodłączone
           6                18        nieparzystość - odd parity
           7                GND       masa zasilania
           8                2              D0
           9                4              D1
           10               6              D2
           11               8              D3
           12               10             D4
           13               12             D5
           14               -         +5V - zasilanie układu



   Modyfikacja interfesów SCSI w MegaSTe i STACY do pracy z dwoma dyskami
( bardzo stare ale jare )

(Oryginał: Copyright 01-05-1995 Michael Ruge - 65428 Rüsselsheim)
(Translation 07-10-1995 Frank Szymanski - 45889 Gelsenkirchen)
(Tłumaczenie 12-02-2018 tOri )

     UWAGA: Ta modyfikacja najpewniej będzie kolidowała z modyfikacją P.Putnika
ponieważ "zabiera" jeden z bitów numeru ACSI, więc należy zdecydować, która z nich
okaże się przydatniejsza w użytkowaniu.

     Interface w MegaSTE i STACY bez modyfikacji może używać tylko jednego dysku twardego z numerem jednostki SCSI 0, bez parzystości. Ta niewielka modyfikacja
(w pełni kompatybilna z Atari) jest w stanie obsłużyć dwa dyski twarde i jest zgodna z
adapterem Megafile 44, co oznacza, że można z niego korzystać używając zwykłego
sterownika HDD.

     Wystarczy dodać dwa przewody i rezystor 1k. Jeden przewód łączy pin 12 - U4 z
pinem 1 - U8, drugi z pinu 2 - U8 do pinu 44 taśmy SCSI nowego dysku twardego.
Obydwa dyski twarde są podłączone do tego samego złącza SCSI - w związku z czym trzeba na taśmę wcisnąć drugie 50 pinowe złącze, a drugi dysk twardy musi być, tak jak
i pierwszy ustawiony na ID 0 SCSI (mimo, że oba dyski twarde mają ID 0 - tak właśnie
powinno być).
     Należy przeciąć przewód 44 taśmy SCSI między pierwszym i drugim złączem dla
dysku, najlepiej bezpośrednio za 50 pinowym gniazdem pierwszego dysku. Następnie
przewód z pinu 2 - U8 należy zlutować z żyłą 44 idącą do drugiego dysku twardego. Po
zrobieniu tego połączenia przylutuj rezystor 1k od pinu 1 Resistor Packa RP3 do pinu 2
układu U8.
     Teraz potrzebny jest rozgałęźnik - Y-kabel - do podłączenia zasilania dwóch dysków
twardych. W razie potrzeby należy zmienić konfigurację sterownika dysków, dzięki
czemu podczas uruchamiania nowy dysk twardy zostanie odnaleziony bez problemu
przez sterownik w Atari.

    
UWAGA: interface został zbudowany tylko dla krótkich kabli SCSI! Taśma nigdy nie
powinna być dłuższa niż 20 centymetrów / 7,8 cala. Dla dłuższych kabli niezbędne są
inne układy buforujące na PCB niż te zastosowane w interfejsie i raczej nie da się tego
zmienić. Z drugiej strony, w MegaSTE i STACY potrzebne są tylko krótkie kable.

    
UWAGA: ŻADEN z twardych dysków nie może posiadać terminatora! Terminatory
w dyskach należy WYŁĄCZYĆ w przeciwnym razie interface może zostać przeciążony i
po prostu część układów może się spalić.

     Adresy urządzenia dla różnych ustawień DIP-switcha:

   dip 1  dip 2  dip 3 ------ dip-switch na płytce interfejsu

   on      on      on         tylko ACSI-urządzenie 0 (Atari default)

   off     on      on         ACSI-urządzenie 0 stary dysk

                              ACSI-urządzenie 1 nowy dysk

   off     off     on         ACSI-urządzenie 1 stary dysk

                              ACSI-urządzenie 2 nowy dysk

   off     on      off        ACSI-urządzenie 2 stary dysk

                              ACSI-urządzenie 3 nowy dysk

   off     off     off        ACSI-urządzenie 3 stary dysk

                              ACSI-urządzenie 4 nowy dysk
 

Megafile 44

     Publikuję poniżej znaleziony w sieci schemat interfejsu dysku wymiennego. Szybka
analiza potwierdziła podejrzenia, że wewnętrzny interfejs Atari MegaSTe jest okrojoną
do obsługi jednego dysku wersją Megafile44. Wygląda na to, że również zawartość PALi
powinna się zgadzać. Zamieszczona powyżej modyfikacja interfejsu wewnętrznego to po
prostu przywrócenie obciętej funkcjonalności...

     Schemat został scalony. Poprawiłem czytelność niektórych połączeń ponieważ
     oryginalnie był zamieszczony na dwóch oddzielnych stronach.