3013
edycji
Nie podano opisu zmian |
Nie podano opisu zmian |
||
(Nie pokazano 35 pośrednich wersji utworzonych przez tego samego użytkownika) | |||
Linia 25: | Linia 25: | ||
= Szczegółowa mapa pamięci CROOK-5 = | = Szczegółowa mapa pamięci CROOK-5 = | ||
Poniższa mapa pamięci odnosi się do systemu CROOK-5 w wersji 8F dla maszyny nie przerobionej. Kolory komórek tabeli oznaczają zawartość komórki (komórek) pamięci pod daną etykietą (adresem): | |||
{| class="wikitable" | {| class="wikitable" | ||
| | zawartość nieznana | |||
|- | |- | ||
| | | bgcolor="Cornsilk" | Dane (zmienna, stała, struktura) | ||
|- | |- | ||
| | | bgcolor="Pink" | Adres (wskaźnik) | ||
|- | |- | ||
| | | bgcolor="Lavender" | Kod (procedura, funkcja, etykieta) | ||
|} | |||
{| class="wikitable" | |||
! Adres !! Etykieta !! Długość !! Zawartość !! Opis | |||
|- | |- | ||
| | | 0x0002 || DUMTIM || 1 || || ? | ||
|- style="background: Pink;" | |||
| 0x0003 || ENDSYS || 1 || AEOV0=0x1600 || koniec właściwiej części systemu (przed nakładkami?) | |||
|- | |- | ||
| | | colspan=5 | [[Tablica konfiguracji MERY-400]] | ||
|- style="background: Cornsilk;" | |||
| 0x0004 || NOBUFF || 3 || || starszy bajt: różne, młodszy bajt: Number Of BUFFers (liczba buforów systemowych) | |||
|- style="background: Cornsilk;" | |||
| 0x0007 || SYSSET || 1 || || SYStem SETtings? (ilość pamięci dla systemu, długość buforów końcówek) | |||
|- style="background: Cornsilk;" | |||
| 0x0008 || TABMEM || 8 || || TABlica konfiguracji pamięci (MEMory) | |||
|- style="background: Cornsilk;" | |||
| 0x0010 || TABDIN || 16 || || adresy talerzy dyskowych | |||
|- style="background: Cornsilk;" | |||
| 0x0020 || TABMT || 4 || || pamięci taśmowe | |||
|- style="background: Cornsilk;" | |||
| 0x0024 || CAMINI || 2 || || adres CAMAC | |||
|- style="background: Cornsilk;" | |||
| 0x0026 || PIINI || 2 || || adres PI | |||
|- style="background: Cornsilk;" | |||
| 0x0027 || IECINI || 2 || || adres IEC | |||
|- style="background: Cornsilk;" | |||
| 0x0028 || TABCHL || 5 || || TABle CHanneL - tablica kanałów | |||
|- style="background: Cornsilk;" | |||
| 0x002d || ADNET || 1 || || ADress NETwork - adres szybkiego łącza | |||
|- style="background: Cornsilk;" | |||
| 0x002e || TABCLK || 1 || || zegar czasu rzeczywistego Amepolu | |||
|- style="background: Cornsilk;" | |||
| 0x002f || ADGUN || 1 || || Numer systemowy jednostki grupowej monitorów ekranowych | |||
|- style="background: Cornsilk;" | |||
| 0x0030 || SETDEV || 15 || || końcówki | |||
|- | |- | ||
| 0x0062 || BPROG || | | colspan=5 | Koniec tablicy konfiguracji MERY-400 | ||
|- style="background: Pink;" | |||
| 0x0040 || || 32 || || [[Przerwania]] | |||
|- style="background: Pink;" | |||
| 0x0060 || || 1 || EXST || adres procedury obsługi EXL | |||
|- style="background: Pink;" | |||
| 0x0061 || STACK || 1 || 0x2ffc || adres stosu | |||
|- style="background: Pink;" | |||
| 0x0062 || BPROG || 1 || TW || Bieżący PROGram (wskaźnik na kontekst bieżącego procesu) | |||
|- style="background: Cornsilk;" | |||
| 0x0063 || D2M5 || 1 || || [[Tablica opisu dysków WINCHESTER|kwant podziału winchestera]] | |||
|- style="background: Cornsilk;" | |||
| 0x0064 || TATYWI || 4 || || [[Tablica opisu dysków WINCHESTER|TAblica TYpów WInchesterów]] | |||
|-|- style="background: Cornsilk;" | |||
| 0x0068 || ADRPRK || 4 || || [[Tablica opisu dysków WINCHESTER|ADResy PaRKingowe]] | |||
|- style="background: Cornsilk;" | |||
| 0x006c || CONSUM || 1 || || suma kontrolna jądra (CONtrol SUM) | |||
|- style="background: Lavender;" | |||
| 0x006d || CHCS || || || procedura licząca sumę kontrolną jądra (CHeck Control Sum) | |||
|- style="background: Lavender;" | |||
| 0x0088 || STOP1R || || || tracenie czasu | |||
|- style="background: Lavender;" | |||
| 0x009a || START || || || start jądra | |||
|- style="background: Lavender;" | |||
| 0x00a1 || ST0 || || || konfiguracja pamięci | |||
|- style="background: Lavender;" | |||
| 0x00db || SL0 || || || wstępna inicjalizacja obszarów pamięci | |||
|- style="background: Lavender;" | |||
| 0x0104 || || || || rozpoznanie dysków podłączonych do maszyny | |||
|- style="background: Lavender;" | |||
| 0x0171 || NMASK || 1 || 0xf000 || kod instrukcji "JP(TAKE)" wykorzystywany w niekonwencjonalny sposób (do ustawiania Q,NB i maskowania przerwań) | |||
|- style="background: Lavender;" | |||
| 0x01e9 || EXIT || || || wyjście ze schedulera? (przywróc rejestry i wektor stanu, uruchom proces) | |||
|- style="background: Lavender;" | |||
| 0x020d || EXIX || || || "załaduj" bieżący proces (wyjście z przerwania?) | |||
|- style="background: Lavender;" | |||
| 0x0231 || TAKE || || || wejście do schedulera? (TAKE process?) | |||
|- | |- | ||
| | | colspan=5 | ... | ||
|- style="background: Lavender;" | |||
| 0x0368 || CLOCK || || || obsługa przerwania timera | |||
|- style="background: Pink;" | |||
| 0x0510 || TABSIN || 6 || HANGDV, IN1X...IN5X || podprocedury obsługi dla SINT | |||
|- style="background: Lavender;" | |||
| 0x054d || INSTX || 1 || || obsługa przerwania instrukcji nielegalnej (w tym SINT) | |||
|- | |- | ||
| | | colspan=5 | ... | ||
|- style="background: Pink;" | |||
| 0x059e || TABEXL || 65 || || TABlica EXtrakodów | |||
|- style="background: Lavender;" | |||
| 0x05eb || QEXIT || || || wybranie następnego procesu do uruchomienia (Queue and EXIT?) | |||
|- style="background: Lavender;" | |||
| 0x101f || GENAD || || || GENerator ADresów (losowych) dla "niszczarki" pamięci | |||
|- style="background: Lavender;" | |||
| 0x1049 || GENOB || || || funkcja do mieszania identyfikatora systemu | |||
|- style="background: Lavender;" | |||
| 0x113f || PLXINX || || || PLiX INterrupt - obsługa przerwania z PLIX-a (MULTIX-a) | |||
|- style="background: Lavender;" | |||
| 0x1143 || MUXINX || || || MUltiX INterrupt - obsługa przerwania z MULTIX-a | |||
|- style="background: Lavender;" | |||
| 0x1195 || TOK || || || Transmisja OK | |||
|- style="background: Lavender;" | |||
| 0x11b2 || WDL || || || Wykonano Dołącz Linię | |||
|- style="background: Lavender;" | |||
| 0x11c7 || WZM || || || Wykonano Zerowanie Multixa | |||
|- style="background: Lavender;" | |||
| 0x11cf || OUKM || || || OUtput Konfiguracja Multix-a | |||
|- style="background: Lavender;" | |||
| 0x11d7 || WUK || || || Wykonano Ustaw Konfigurację | |||
|- style="background: Lavender;" | |||
| 0x11ea || OUDL || || || OUtput Dołącz Linię | |||
|- style="background: Cornsilk;" | |||
| 0x11f9 || DLPLIX || || || pole sterujące Dołącz Linię PLIX-a | |||
|- style="background: Pink;" | |||
| 0x11fc || TAMXIN || 35 || || TAble MultiX INterrupts (adresy procedur dla przerwań z multixa - ze specyfikacji przerwania) | |||
|- style="background: Cornsilk;" | |||
| 0x121f || TABWIN || 4 || || | |||
|- style="background: Cornsilk;" | |||
| 0x1223 || WINERR || 17 || || | |||
|- style="background: Lavender;" | |||
| 0x123f || MUXWIN || 35 || || MUltiX WINchester (weście do konfiguracji winchestera) | |||
|- style="background: Lavender;" | |||
| 0x15e4 || TAFLOP || || || Procedura sprawdzająca, czy obsłużono przerwanie, na które czekał bieżący proces | |||
|- style="background: Lavender;" | |||
| 0x21bc || COPSY0 || || || COPy SYstem - procedura kopiujaca system do obszaru docelowego (uruchamia się jeśli uruchomić zassemblowane jądro) | |||
|- style="background: Lavender;" | |||
| 0x220b || OSTART || || || "START" po doładowaniu dalszej części jądra | |||
|- style="background: Lavender;" | |||
| 0x2220 || INIC || || || Multix poprawnie zresetowany (programowo) | |||
|- style="background: Lavender;" | |||
| 0x2249 || LOM || || || Dokonfigurowanie pamięci: 3 i 4 segment | |||
|- style="background: Lavender;" | |||
| 0x226b || ZER || || || ZERowanie segmentu od 0x5000 | |||
|- style="background: Lavender;" | |||
| 0x22ac || || || || Sprawdzenie sumy kontrolnej jądra | |||
|- | |- | ||
| | | colspan=5 | ... | ||
| ... | |||
|- | |- | ||
| | | 0x280e || ABIN || TERM=56 || || | ||
|- | |- | ||
| | | 0x2846 || QJW || NOQ=16 || || | ||
|- | |- | ||
| | | 0x2856 || JOBMEM || 1 || || LISTA PROC Z PAO DO ODEBRANIA | ||
|- | |- | ||
| | | 0x2857 || FREMEM || 1 || || LISTA WOLNEJ PAO | ||
|- | |- | ||
| | | 0x2858 || BUFMEM || 1 || || LISTA 4K - BUFOROW | ||
|- | |- | ||
| | | 0x2859 || RAMDIS || 1 || || lista zbiorow RAM\ | ||
|- | |- | ||
| | | 0x285a || PROCNU || 1 || || NUMER PROCESORA (unikalny identyfikator systemu) | ||
|- | |- | ||
| | | 0x285b || PGRFX || 1 || || LISTA DLA GRF | ||
|- | |- | ||
| | | 0x285c || LAST || 1 || || GENERATOR (adresów pseudolosowych) | ||
|- | |- | ||
| 0x285d || SCLK || 1 || || | |||
|- style="background: Cornsilk;" | |||
| 0x285e || YEAR || 1 || || | |||
|- style="background: Cornsilk;" | |||
| 0x285f || DAYS || 2 || || | | 0x285f || DAYS || 2 || || | ||
|- style="background: Cornsilk;" | |||
| 0x2861 || HOURS || 3 || || | |||
|- style="background: Cornsilk;" | |||
| 0x2864 || SEC || 1 || || | |||
|- style="background: Cornsilk;" | |||
| 0x2865 || CSEC || 1 || || | |||
|- style="background: Cornsilk;" | |||
| 0x2866 || DSEC || 1 || || | |||
|- style="background: Cornsilk;" | |||
| 0x2867 || MSEC || 1 || || aktualna ilość "tyknięć" timera do obudzenia schedulera (odlicza od BMSEC do 0) | |||
|- style="background: Cornsilk;" | |||
| 0x2868 || BCSEC || 1 || || | |||
|- style="background: Cornsilk;" | |||
| 0x2869 || BMSEC || 1 || -10 || przerwanie timera budzi scheduler 10x rzadziej | |||
|- | |- | ||
| | | 0x286a || CQJTST || 1 || || | ||
|- | |- | ||
| | | 0x286b || WRCS || 1 || || odtąd aż do ADINI0 - zerowane przy starcie | ||
|- | |- | ||
| | | 0x286c || NUCLK || 1 || || | ||
|- | |- | ||
| | | 0x286d || LCLK || 1 || || | ||
|- | |- | ||
| 0x286e || ACLK || 1 || || | |||
| 0x286e || ACLK || || || | |||
|- | |- | ||
| 0x286f || PAXREG || 7 || || | | 0x286f || PAXREG || 7 || || | ||
|- | |- | ||
| 0x2876 || ARTABL || ILAR*4 = 60 || || METRYKI TALERZY | | 0x2876 || ARTABL || ILAR*4=60 || || METRYKI TALERZY | ||
|- | |- | ||
| 0x28b2 || TABND || ILAR = 15 || || NAZWY TALARZY | | 0x28b2 || TABND || ILAR=15 || || NAZWY TALARZY | ||
|- | |- | ||
| 0x28c1 || TABAD || ILAR = 15 || || TABLICA OFSETOW | | 0x28c1 || TABAD || ILAR=15 || || TABLICA OFSETOW | ||
|- | |- | ||
| 0x28d0 || ADSNET || || || | | 0x28d0 || ADSNET || 1 || || | ||
|- | |- | ||
| 0x28d1 || INNET || 2 || || | | 0x28d1 || INNET || 2 || || | ||
Linia 117: | Linia 231: | ||
| 0x28d3 || NETEN || 2 || || | | 0x28d3 || NETEN || 2 || || | ||
|- | |- | ||
| 0x28d5 || ENGCAM || NOCAM+1 || || | | 0x28d5 || ENGCAM || NOCAM+1=5 || || | ||
|- | |- | ||
| 0x28da || WORCAT || || || | | 0x28da || WORCAT || 1 || || | ||
|- | |- | ||
| 0x28db || ROBCOR || || || KOM ROBOCZA DLA SIN+T.CORALE. | | 0x28db || ROBCOR || 1 || || KOM ROBOCZA DLA SIN+T.CORALE. | ||
|- | |- | ||
| 0x28dc || ROBMEM || 7 || || | | 0x28dc || ROBMEM || 7 || || | ||
Linia 127: | Linia 241: | ||
| 0x28e3 || FIR || 14 || || | | 0x28e3 || FIR || 14 || || | ||
|- | |- | ||
| 0x28e9 || REJM || || || | | 0x28e9 || REJM || 7 || || zawiera się w FIR (FIR+6) | ||
|- | |- | ||
| 0x28f1 || TSEXL || 12 || || | | 0x28f1 || TSEXL || 12 || || | ||
|- | |- | ||
| 0x28f8 || NMFIL || || || | | 0x28f8 || NMFIL || 5 || || zawiera się w TSEXL (TSEXL+7) | ||
|- | |- | ||
| | | 0x28fd || STATFI || 2 || || STATYSTYKA ZBIOROWA | ||
|- | |- | ||
| 0x2900 || AUKMX || || || | | 0x28ff || ADBFCH || 1 || || | ||
|- style="background: Pink;" | |||
| 0x2900 || AUKMX || 1 || || Adres Ustaw Konfigurację MultiX-a? | |||
|- style="background: Pink;" | |||
| 0x2901 || AUKPLX || 1 || 0x2f85 || Adres Ustaw Konfigurację PLiX-a? | |||
|- | |- | ||
| | | 0x2902 || CHRMUX || 1 || || | ||
|- | |- | ||
| | | 0x2903 || MUXDIS || 1 || || | ||
|- | |- | ||
| | | 0x2904 || MUXTAP || 1 || || | ||
|- | |- | ||
| | | 0x2905 || MUXFLP || 1 || || | ||
|- | |- | ||
| | | 0x2906 || MUXPLX || 1 || || | ||
|- | |- | ||
| 0x2907 || LWINCH || 1 || || | |||
| 0x2907 || LWINCH || || || | |||
|- | |- | ||
| 0x2908 || MUXWRK || 2 || || | | 0x2908 || MUXWRK || 2 || || | ||
|- | |- | ||
| 0x290a || ZERMLX || || || | | 0x290a || ZERMLX || 1 || || | ||
|- style="background: Cornsilk;" | |||
| 0x290b || TW || PIOR+1=14 || || Fragment struktury opisującej proces. Kontekst procesu tracenia czasu? (Time Wait?) | |||
|- style="background: Pink;" | |||
| 0x2919 || ADINI || 1 || 0x2fc5 || Adres INI (procesu pierwotnego)? (początek listy procesów aktywnych?) | |||
|- style="background: Pink;" | |||
| 0x291a || ADGUP || 1 || || Adres czegoś związanego z jednostką grupową monitorów ekranowych? | |||
|- style="background: Pink;" | |||
| 0x291b || FREES || 1 || || Adres pierwszego wolnego slotu w tablicy procesów | |||
|- | |- | ||
| | | 0x291c || FSART || 1 || || | ||
|- | |- | ||
| | | 0x291d || FSFT || 1 || || | ||
|- | |- | ||
| | | 0x291e || FLBS || 1 || || | ||
|- | |- | ||
| | | 0x291f || FSBS || 1 || || | ||
|- | |- | ||
| 0x2920 || ASYBUF || 1 || || | |||
| 0x2920 || ASYBUF || || || | |||
|- | |- | ||
| 0x2921 || ASYTAB || 3 || || | | 0x2921 || ASYTAB || 3 || || | ||
|- | |- | ||
| 0x2924 || IECENG || LIEC || || | | 0x2924 || IECENG || LIEC=1 || || | ||
|- | |- | ||
| 0x2925 || IECADR || LIEC || || | | 0x2925 || IECADR || LIEC=1 || || | ||
|- | |- | ||
| 0x2926 || TIECC || || || | | 0x2926 || TIECC || 1 || || | ||
|- | |- | ||
| 0x2927 || DVOF || MEMCH = | | 0x2927 || DVOF || MEMCH=72 || || | ||
|- | |- | ||
| 0x296f || TABMUX || MEMCH = | | 0x296f || TABMUX || MEMCH=72 || || | ||
|- | |- | ||
| 0x29b7 || TABF || MEMCH = | | 0x29b7 || TABF || MEMCH=72 || || | ||
|- | |- | ||
| 0x29ff || ENGDEV || MEMCH+NOMT || || | | 0x29ff || ENGDEV || MEMCH+NOMT=76 || || | ||
|- | |- | ||
| | | 0x2a47 || ENGMT || 4 || || ENGMT jest częścią ENGDEV (ENGDEV+MEMCH) | ||
|- | |- | ||
| 0x2a4b || ST || TERM = 56 || || | | 0x2a4b || ST || TERM=56 || || | ||
|- | |- | ||
| 0x2a83 || DISTAT || 12 || || | | 0x2a83 || DISTAT || 12 || || | ||
|- | |- | ||
| 0x2a8f || JW || JWIEC+8 || || | | 0x2a8f || JW || JWIEC+8=89 || || | ||
|- | |- | ||
| 0x2ae8 || TBAR || 16 || || | | 0x2ae8 || TBAR || 16 || || | ||
|- | |- | ||
| 0x2af8 || SYSTAB || || || | | 0x2af8 || SYSTAB || 1 || || | ||
|- | |- | ||
| 0x2af9 || TMEBEG || || || | | 0x2af9 || TMEBEG || 1 || || | ||
|- | |- | ||
| 0x2afa || TMEEND || || || | | 0x2afa || TMEEND || 1 || || | ||
|- | |- | ||
| 0x2afb || NOMEMB || || || | | 0x2afb || NOMEMB || || || | ||
|- | |- | ||
| colspan=5 | ... | | colspan=5 | ... | ||
|- style="background: Cornsilk;" | |||
| 0x2f85 || *AUKPLX || 64 || || | |||
|- style="background: Cornsilk;" | |||
| 0x2fc5 || *ADINI || TABUJB=55 || || Kontekst procesu pierwotnego INI? | |||
|- style="background: Cornsilk;" | |||
| 0x2ffc || *STACK || 4 || || Stos systemowy (początkowo ADINI0) | |||
|- | |- | ||
| | | 0x2fff || || || || ostatnie słowo 3. segmentu 4k | ||
|- | |- | ||
| | | colspan=5 | ... | ||
|- | |- style="background: Lavender;" | ||
| | | 0x6398 || LCL3 || || || Ładowanie numeru zegara (system ID) z zegara czasu rzeczywistego | ||
|} | |} | ||
{{source|title=Opracowanie własne}} |