Co nowego: Różnice pomiędzy wersjami

Z MERA 400 wiki
Przejdź do nawigacji Przejdź do wyszukiwania
(5 września 2012)
Linia 1: Linia 1:
 
__NOTOC__
 
__NOTOC__
''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 ===
 
Od jednego z autorów CROOK-a (sic!) dostaję maila z informacją, że jest szansa na odzyskanie jego źródeł! Okazuje się też, że jest MERA-400, którą być może udałoby się uruchomić! I kolejna dobra wiadomość: projekt został przedstawiony na liście dyskusyjnej Sekcji Historycznej PTI.
 
  
 
=== 4 września 2012 ===
 
=== 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. Choć jeszcze w zupełnych powijakach (raptem 1694 linie), wykonuje poprawnie pierwszy kod maszynowy, który w assemblerze wygląda tak:
+
EM400 - emulator MERY-400, jeszcze w zupełnych powijakach (1694 linie), wykonuje poprawnie pierwszy kod maszynowy, który w assemblerze wygląda tak:
  
 
  LWI    r1, 16
 
  LWI    r1, 16
 
  AWI    r1, 17
 
  AWI    r1, 17
 
  RWI    r1, 18
 
  RWI    r1, 18
 
=== 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 ===
 
=== 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:
+
Pod adresem http://mera400.pl powstaje wiki poświęcone MERZE-400. Powstaje też disassembler kodu maszynowego MERY-400. Plik INSTALL.EXE z odczytanej dyskietki jest programem dla MERY-400 (fragment):
  
 
  0x0125: BCD    r4, 256        # 0  100 000 000 (4 0 0)  m=100      # Branch if not all Conditions
 
  0x0125: BCD    r4, 256        # 0  100 000 000 (4 0 0)  m=100      # Branch if not all Conditions
Linia 31: Linia 22:
 
  0x0130: LWI    r3, [4569+r3]  # 1  011 011 000 (3 3 0)  m=11d9    # Load Word                   
 
  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           
 
  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 ===
 
=== 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:
+
Udało się odczytać dyskietkę 5.25" opisaną "CROOK-5". Zawartość wygląda obiecująco:
  
 
  -rwxr-xr-x 1 amo amo  1572 Aug  4 20:22 E14X8.PAK
 
  -rwxr-xr-x 1 amo amo  1572 Aug  4 20:22 E14X8.PAK
Linia 56: Linia 41:
 
  -rwxr-xr-x 1 amo amo  1649 Aug  4 20:22 V16X9.PAK
 
  -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
 
  -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 ===
 
[[File:Literatura_stosik.jpg|thumb|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.
 

Wersja z 21:23, 5 wrz 2012


4 września 2012

EM400 - emulator MERY-400, jeszcze w zupełnych powijakach (1694 linie), wykonuje poprawnie pierwszy kod maszynowy, który w assemblerze wygląda tak:

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

23 sierpnia 2012

Pod adresem http://mera400.pl powstaje wiki poświęcone MERZE-400. Powstaje też disassembler kodu maszynowego MERY-400. Plik INSTALL.EXE z odczytanej dyskietki jest programem dla MERY-400 (fragment):

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          

31 lipca 2012

Udało się odczytać dyskietkę 5.25" opisaną "CROOK-5". Zawartość wygląda obiecująco:

-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