DataMuseum.dk

Presents historical artifacts from the history of:

CR80 Hard and Floppy Disks

This is an automatic "excavation" of a thematic subset of
artifacts from Datamuseum.dk's BitArchive.

See our Wiki for more about CR80 Hard and Floppy Disks

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - download

⟦3083b07f6⟧ TextFile

    Length: 5656 (0x1618)
    Types: TextFile
    Names: »MAP.I«

Derivation

└─⟦e0c43619c⟧ Bits:30005797 CR80 Disc pack ( Vol:FNJ1 861029/EC CR80 S/W Package II+III+IV+V+VII )
    └─ ⟦this⟧ »CSP007_V0501.D!CSS7000.D!MAP.I« 

TextFile


%LIST     %LIST     %LIST
"-----------------------------------------------------------------------
"
"  MODULE NAME:           TPE Memory Map Module
"  MODULE ID NMB:         CSS/7000
"  MODULE VERSION:        03
"  MODULE RELEASE:        01
"  RELEASE DATE:          850910
"
"-----------------------------------------------------------------------
%NOLIST   %NOLIST   %NOLIST


IMPORT PROCEDURE
environment
"========="
   (r6); " C    link
         "   R  online_tpe / offline_tpe


IMPORT PROCEDURE
get_system_program_page_number
"============================"
   (r0;  " - R  (physical) system program page number
    r6); " C D  link
"--------------------------------------------------------------------
" This procedure reads the system program page number from the MAP and
" returns it to the caller.
"--------------------------------------------------------------------


IMPORT PROCEDURE
get_user_program_page_number
"=========================="
   (r0;  " - R  (physical) user program page number
    r6); " C D  link
"--------------------------------------------------------------------
" This procedure reads the user program page number from the CPU
" context and returns it to the caller.
"--------------------------------------------------------------------


IMPORT PROCEDURE
get_user_data_page_number
"======================="
   (r0;  " - R  (physical) user data page number
    r6); " C D  link
"--------------------------------------------------------------------
" This procedure reads the user data page number from the CPU context
" and returns it to the caller.
"--------------------------------------------------------------------


IMPORT PROCEDURE
move_test_program_page
"===================="
   (r0;  " C K  destination page
    r6); " C    link
         "   R  done/forbidden
"--------------------------------------------------------------------
" This procedure will return 'forbidden' in the AMOS version. In the
" offline PU version it will move the contents of the entire test
" program page and update the mapping accordingly.
" This procedure requires, that sytem mapping is equal to user program
" mapping and user data mapping. If not so it returns 'forbidden'
"--------------------------------------------------------------------


IMPORT
PROCEDURE Abs_To_Local
"===================="
   (r01;  "C R   Abs source address
    r23;  "C R   Base relative destination address
    r7;   "C R   Byte count
    r6    "C R   Link/Completion code");
"--------------------------------------------------------------------
" This procedure moves a number of bytes from a page, addressed by
" Abs(olute) address to the local process area.
"--------------------------------------------------------------------


IMPORT
PROCEDURE Local_To_Abs
"===================="
   (r01;  "C R   Base relative source address
    r23;  "C R   Abs destination address
    r7;   "C R   Byte count
    r6    "C R   Link/Completion code");
"--------------------------------------------------------------------
" This procedure moves a number of bytes from the local process area
" to a page that is referenced by abs(olute) address.
"--------------------------------------------------------------------

IMPORT
PROCEDURE   Abs_To_Abs
"===================="
   (r01;  "C R   Abs source address
    r23;  "C R   Abs destination address
    r7;   "C R   Byte count
    r6    "C R   Link/Completion code");
"--------------------------------------------------------------------
" This procedure moves a number of bytes from one page to another
" Both source and destination are abs(olute) addressed.
"--------------------------------------------------------------------

IMPORT
PROCEDURE Load_Abs_Byte
"====================="
   (r01;  "C K  Abs source address
    r3;   "- R  Loaded byte
    r6    "C R  Link/Completion code");
"--------------------------------------------------------------------
" This procedure loads a single byte from a page that is referenced
" by an abs(olute) address.
"--------------------------------------------------------------------

IMPORT
PROCEDURE Store_Abs_Byte
"======================"
   (r01;  "C K  Abs destination address
    r3;   "C K  Byte to store
    r6    "C R  Link/Completion code");
"--------------------------------------------------------------------
" This procedure stores a single byte in a page that is referenced
" by an abs(olute) address.
"--------------------------------------------------------------------

IMPORT
PROCEDURE Load_Abs_Word
"====================="
   (r01;  "C K  Abs source address
    r2;   "- R  Loaded word
    r6    "C R  Link/Completion code");
"--------------------------------------------------------------------
" This procedure loads a single word from a page that is referenced
" by an abs(olute) address.
"--------------------------------------------------------------------

IMPORT
PROCEDURE Store_Abs_Word
"======================"
   (r01;  "C K  Abs destination address
    r2;   "C K  Word to store
    r6    "C R  Link/Completion code");
"--------------------------------------------------------------------
" This procedure stores a single word in a page that is referenced
" by an abs(olute) address.
"--------------------------------------------------------------------


IMPORT PROCEDURE
init_memory_map_module
"===================="
   (r6); " C D  link
"--------------------------------------------------------------------
" This procedure initializes the local data structures of the
" memory map module.
"
" Note: This procedure is only to be used by the TPE itself.
"--------------------------------------------------------------------

" end of MAP.I