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

⟦35c64859a⟧ TextFile

    Length: 3766 (0xeb6)
    Types: TextFile
    Names: »MEMMGRPARAMS.S«

Derivation

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

TextFile

"-----------------------------------------------------------------------
"
"  MODULE NAME:      MEMMORY MANAGER PARAMETERS (MEMMGRPARAMS)
"  MODULE ID NMB:    CSS/878
"  MODULE VERSION:   0106
"  MODULE TYPE:      PREFIX
"  MERGE  FILES:     -
"
"  SPECIFICATIONS:   -
"  AUTHOR/DATE:      JSL/800608
"
"  DELIVERABLE:      -
"  SOURCE LANGUAGE:  SWELL
"  COMPILE COMPUTER: CR80
"  TARGET COMPUTER:  CR80
"  OPER. SYSTEM:     AMOS
"
"-----------------------------------------------------------------------
"
"  CHANGE RECORD
"
"  VERSION    AUTHOR/DATE    DESCRIPTION OF CHANGE
"  -------    -----------    ---------------------
"  0102       JSL/800929     TYPE MEMORY_TYPE EXPANDED WITH DSPCTYPE
"                            WHICH IS USED TO REQUEST MEMORY IN A SPE-
"                            CIFIED SECTION.
"
"  0103       JSL/801027     EXPANDED DEFINITION OF MESSAGE PARAMETERS
"
"  0104       JSL/801123     PARAMETERS FOR FUNCTIONS ALLCAP AND
"                            ALLSTA INCLUDED
"
"  0105                      MX VERSION: RESERVEABS AND GIVE FUNCTIONS
"                            INCLUDED.
"
"  0106        FP/850515     MERGED WITH CR801 SPECIAL PREFIX.
"
"-----------------------------------------------------------------------
"PAGE«ff»
" THE SIGNIFICANCE OF THE PARAMETERS IN THE MEMMGR MESSAGE RECORD
" ARE DEPENDANT OF THE TYPE OF OPERATION SPECIFIED AS FOLLOWS:
"
"     . RELEASE   -   KIND = MEMORY PARAMETER
"     . RESERVE   -   KIND = MEMORY TYPE (,PAGE IF TYPE=DSPCTYPE)
"     . CONVERT   -   KIND = MEMORY PARAMETER
"     . RELEASEALL-   KIND = MEMORY PARAMETER
"     . TRANSFER  -   KIND = MEMORY PARAMETER, WORD_SIZE = NEW_OWNER (PCB)
"     . ALLCAP    -   KIND   NA
"     . ALLSTA    -   KIND   NA

"COMMANDS
CONST
      MMGRELEASE    = 0;    "DEALLOCATE MEMORY
      MMGRESERVE    = 1;    "ALLOCATE MEMORY
      MMGCONVERT    = 2;    "CONVERT MEMORY PARAMETER
      MMGRELEASEALL = 3;    "DEALLOCATE ALL MEMORY RESERVED
      MMGTRANSFER   = 4;    "TRANSFER MEMORY OWNERSHIP
      MMGALLCAP     = 5;    "RETURN SEGMENT CAPACITY      (XAMOS)
      MMGALLSTA     = 6;    "RETURN SEGMENT AVAILABILITY  (XAMOS)
      MMGRESERVEABS = 5;    "RESERVE ABOLUTELY ADDRESSED AREA (MX-AMOS)
      MMGGIVE       = 6;    "GIVE MEMMGR INFO                 (MX-AMOS)

TYPE  MEMMGR_COMMAND = MMGRELEASE..MMGALLSTA;

TYPE  MEMORY_TYPE = (PROGTYPE,DATATYPE,DSPCTYPE); "PAGE0,ANY,SPEC SECT

TYPE  MEMMGR_MESSAGE =
        RECORD
          OPERATION:      MEMMGR_COMMAND;
          KIND:           INTEGER;        "TYPE/MEMORY PARAMETER
          WORD_SIZE:      INTEGER;        "MEMORY REQUIREMENT/NEW OWNER (PCB)
          CPU_REQUIRED:   CPU_NUMBER;
          SPARE:          INTEGER;
        END;

CONST
      MMMKINDP = 0;  MMMKINDX = 8;        "KIND FIELD
      MMMPAGP  = 8;  MMMPAGX  = 2;        "PAGE FIELD

TYPE  MEMORY_PARAMETER  = INTEGER;

"RESULTS
CONST
      MMGDONE       = 0;    "OPERATION COMPLETE

TYPE  MEMMGR_ANSWER =
        RECORD
          RESULT:         INTEGER;        "MMGDONE/BMERROR
          MEMORY:         MEMORY_PARAMETER;
          ADDR:           ABSPTR;
          CPU_PAGE:       INTEGER;        " CPU (MSB), PAGE (LSB)
          WORD_SIZE:      INTEGER;
        END;

CONST
      MMAPAGP  = 2;  MMAPAGX  = 2;       "PAGE FIELD
      MMACPUP  = 8;  MMACPUX  = 3;       "CPU FIELD

"IN THE CASE COMMAND=MMGALLCAP/MMGALLSTA THE ANSWER CONTAINS IN
"PARAMETERS 1,2,3 AND 4 THE NUMBER OF MEMORY SEGMENTS IN SECTIONS
"0,1,2 AND 3, WHICH ARE WRITABLE (CAPACITY)/ALLOCATABLE (STATUS)
"RESPECTIVELY

"THE SIZE OF A MEMORY SEGMENT IS DEFINED BY THE LN 2 OF THE SIZE IN WORDS:
CONST                                    "XAMOS ONLY
      MSGSZLN = 7;                       "MEMORY SEGMENT SIZE = 128 WORDS

"END OF MEMMGRPARAMS