Co nowego

Z MERA 400 wiki
Przejdź do nawigacji Przejdź do wyszukiwania

Dziennik projektu ożywienia MERY-400. W odwróconej chronologii, żeby na początku było to, co najświeższe i najważniejsze. :-)

5 września 2012

Dwie dobre wieści: Dostaję maila z informacją, że jest szansa na odzyskanie źródeł CROOK-a! I okazuje się, że jest też MERA-400, którą być może udałoby się uruchomić!

4 września 2012

Emulator EM400, choć jeszcze w zupełnych powijakach (raptem 1694 linie), wykonuje poprawnie pierwszy kod maszynowy, który w assemblerze wygląda tak:

LWI     r1, 16
AWI     r1, 17
RWI     r1, 18

4 września 2012

Na wysłanego z nadzieją maila dostaję entuzjastyczną odpowiedź z deklaracją pomocy. Mail zostaje też przesłany do grupy osób, które być może projekt zainteresuje. Jackpot! W międzyczasie emulator EM400 dostaje implementację pierwszych kilkudziesięciu rozkazów.

28 sierpnia 2012

Ponieważ jasnym już jest, że dokumentacja nie odpowiada na wszystkie pytania, które rodzą się podczas pisania disassemblera i emulatora, szukam pomocy dalej. Google podpowiada nazwisko człowieka, który pracował nad rozwojem MERY-400 do samego końca. Raz kozie śmierć, wysyłam maila z nie-tak-krótkim opisem tego, co chcę zrobić i co już zrobiłem.

24 sierpnia 2012

Zaczynam pisać emulator. Najpierw MJC-400 i żmudne stworzenie szkieletu: tablica skoków dla rozkazów, pamięć, rejestry...

23 sierpnia 2012

Wiki MERA-400 będzie jednak dla wszystkich, pod uruchomionym właśnie adresem http://mera400.pl. W tak zwanym międzyczasie powstaje disassembler kodu maszynowego. Dzięki niemu mogę zajrzeć w to, co jest na odzyskanej niedawno dyskietce. Wychodzi na to, że coś całkiem składnego. Poniżej wyrwany fragment kodu z wyjścia disassemblera:

0x0125: BCD     r4, 256         # 0  100 000 000 (4 0 0)  m=100      # Branch if not all Conditions
0x0127: IRB     r1, -12         # 1  001 001 100 (1 1 4)  t=-c       # Increment Register and Branch
0x0128: LWD     r6, 65522+r3    # 0  110 011 000 (6 3 0)  m=fff2     # Load Word                   
0x012a: CWT     r4, 0           # 0  100 000 000 (4 0 0)  t=0        # Compare Word to parameTer   
0x012b: JER     r7              # 0  010 000 111 (2 0 7)  m=0        # Jump if Equal               
0x012c: LWT     r3, 16          # 0  011 010 000 (3 2 0)  t=10       # Load to Word paremeTer      
0x012d: SRZ     r4              # 1  100 001 000 (4 1 0)             # Shift Right, add Zero       
0x012e: JYS     1               # 0  110 000 001 (6 0 1)  t=1        # Jump if Y Short             
0x012f: DRB     r3, -3          # 1  011 000 011 (3 0 3)  t=-3       # Decrease Register and Branch
0x0130: LWI     r3, [4569+r3]   # 1  011 011 000 (3 3 0)  m=11d9     # Load Word                   
0x0132: UJD     730             # 0  000 000 000 (0 0 0)  m=2da      # Unconditional Jump          

7 sierpnia 2012

Uruchamiam MediaWiki, w którym planuję zbierać informacje dotyczące MERY-400. W pierwotnej wersji pomysłu - na własny użytek, bo sięganie do stosu papierowej dokumentacji jest mało wygodne. Poza tym aż strach jej dotykać, w końcu to zabytek.

1 sierpnia 2012

Próbuję skontaktować się z jedynym znanym mi człowiekiem, który pracował z MERĄ-400 i ma o niej całkiem sporą wiedzę. Niestety bez rezultatu.

31 lipca 2012

Ponowienie prób z trzema różnymi napędami FDD nie przynosi pożądanego efektu, choć uszkodzone sektory próbuję odczytywać setki razy. Ostatnią nadzieją wydaje się być to urządzenie: http://www.kryoflux.com/. Albo jego "domowy" odpowiednik - w końcu to tylko Atmel i trochę pamięci. Na szczęście kilka tygodni później analiza lokalizacji uszkodzonych sektorów pokazuje, że tylko 72 bajty z uszkodzonych 1536 należą do jakiegoś pliku. A ten w dodatku wydaje się być mało istotny! Tak więc jest coś, co wydaje się być poprawną wersją instalacyjną (?) CROOK-5:

-rwxr-xr-x 1 amo amo  1572 Aug  4 20:22 E14X8.PAK
-rwxr-xr-x 1 amo amo 32060 Aug  4 20:22 HASLA.PAK
-rwxr-xr-x 1 amo amo  8496 Aug  4 20:22 INSTALL.EXE
-rwxr-xr-x 1 amo amo  9496 Aug  4 20:22 KLUCZE.PAK
-rwxr-xr-x 1 amo amo    72 Aug  4 20:22 KOLORY.DTA
-rwxr-xr-x 1 amo amo    72 Aug  4 20:22 KOLORYH.DTA
-rwxr-xr-x 1 amo amo    72 Aug  4 20:22 KOLORYM.DTA
-rwxr-xr-x 1 amo amo  9034 Aug  4 20:22 MAKEPLIK.PAK
-rwxr-xr-x 1 amo amo 24384 Aug  4 20:22 PTV.SKR
-rwxr-xr-x 1 amo amo 89164 Aug  4 20:22 PTVX.PAK
-rwxr-xr-x 1 amo amo 16442 Aug  4 20:22 TEKSTY.PAK
-rwxr-xr-x 1 amo amo 21406 Aug  4 20:22 UNPAK.EXE
-rwxr-xr-x 1 amo amo 12715 Aug  4 20:22 UNSKR.EXE
-rwxr-xr-x 1 amo amo  1649 Aug  4 20:22 V16X9.PAK
-rwxr-xr-x 1 amo amo 76277 Aug  4 20:22 ZAKLADY.SKR

27 lipca 2012

Znalazła się dyskietka 5,25" opisana "CROOK-5". Kolejne próby jej odczytania kończą się niepowodzeniem: trzy sektory są uszkodzone, a 1536 bajtów to całkiem sporo, jak na 360kB pojemności nośnika. Firma zajmująca się odzyskiwaniem danych, z którą się kontaktuję, nie zajmuje się niestety dyskietkami. Za to sugerują kilka możliwych rozwiązań.

26 lipca 2012

Literatura

Wyciągnąłem z zakurzonych pudeł, do tej pory spoczywających w piwnicy, dokumentację, którą uratowałem (z pomocą mamy) gdzieś w latach '90 z piwnic HSO "Szczakowa". Po pobieżnym jej przejrzeniu okazało się, że szczegółowość informacji w niej zawartych wystarczyłaby chyba do odtworzenia komputera. Przynajmniej programowo.