home *** CD-ROM | disk | FTP | other *** search
/ CP/M / CPM_CDROM.iso / cpmhelp / bios.hlp < prev    next >
Text File  |  1994-07-27  |  5KB  |  108 lines

  1. Page Zero Locations
  2. BIOS Jump Vector Adresses
  3. I/O Status Byte Organization/Meaning
  4. :Page Zero Locations
  5.      Locations (hex)    Meaning/Explanation
  6.  
  7.      0,1,2        Set to JMP WBOOT in BIOS. e.g., C3 03 E8 - JMP E803
  8.      3            IOBYTE (See Section re: I/O Status Byte)
  9.      4            Current default drive/user (drive 0=A, 15=P, etc.)
  10.             High nibble=user no.  Low nibble=drive no.
  11.             ie, user|drive=0000|0001=user0|drive B
  12.      5,6,7        BDOS entry point. e.g., C3 06 DA - JMP DA06
  13.      08-27        Interrupt locations 1 through 5 not used
  14.       * 20         * RTOKFG sign-on reentry flag from reentry to PBBS
  15.                from CP/M. (PBBS, BYE)
  16.       * 21         * LOGST ASCII logon time 8 bytes (PBBS)
  17.       * 2C         * USREC User record No. 2 bytes (PBBS)
  18.      30-37        Interrupt location 6, not currently used. Reserved
  19.      38-3A        Restart7; contians a jump instruction into DDT or SID
  20.             program when running in debug mode for programmed break
  21.             points, but is not otherwise used by CP/M.
  22. ~
  23.      Locations (hex)    Meaning/Explanation
  24.  
  25.      3B-3F        Not currently used. Reserved.
  26.       * 3B         * KILBEL  Bell Toggle (BYE, CHAT, PBBS)
  27.       * 3C         * MSPEED (BYE, KMD, PBBS)
  28.       * 3D         * Maximum Drive Number (ZCMD, BYE, PBBS, KMD)
  29.       * 3E         * Wheel Byte (ZCMD, BYE, PBBS, KMD) 0=Remote User
  30.       * 3F         * Maximum User Number (ZCMD, BYE, PBBS, KMD)
  31.      40-4F        A 16 byte area reserved for scratch by CBIOS, but is
  32.             not used for any other purpose by CP/M.
  33.       * 40         * Fraction of a second 1/62th
  34.       * 41         * Seconds
  35.       * 42         * Minutes
  36.       * 43         * Hours
  37.       * 44         * Month
  38.       * 45         * Day
  39.       * 46         * Year
  40.       * 4E         * Mode byte for floppy disk
  41. ~
  42.      Locations (hex)    Meaning/Explanation
  43.  
  44.      50-5B        Not currently used. Reserved
  45.       * 54         * Count of uploads (KMD, PBBS)
  46.       * 55         * Count of downloads (KMD, PBBS)
  47.      5C-7C        Default file control block produced for a transient
  48.             program by the Console Command Processor.
  49.      7D-7F        Optional default random record position
  50.      80-FF        Default 128-byte disk buffer which is also filled with
  51.             the command line when a transient is loaded under CCP.
  52. :BIOS Jump Vector Addresses
  53.      Thσá followinτ i≤ ß tablσ representinτ thσ entr∙ point≤ int∩ thσá CP/═ ì
  54. BIOS of the major routines accessable to the user:
  55.  
  56.      Routine   Actual Address      Comment
  57.  
  58.      BOOT         E800H            Cold Start (Start of CBIOS)
  59.      WBOOT        E803H            Warm Start (WBOOTE)
  60.      CONST        E806H            Console Status
  61.                                     Reg A = 00 if no char ready
  62.                                     Reg A = FF if char ready
  63.      CONIN        E809H            Console char in (Reg A)
  64.      CONOUT       E80CH            Console char out (Reg C)
  65.      LIST         E80FH            List out (Reg C)
  66.      PUNCH        E812H            Punch out (Reg C)
  67.      READER       E815H            Reader in (Reg A)
  68. ~
  69.      Routine   Actual Address      Comment
  70.  
  71.      HOME         E818H            Move to track 00
  72.      SELDSK       E81BH            Select disk given by Reg C (A=0,B=1,...)
  73.      SETTR╦á      E81E╚á           Se⌠á tracδá addres≤á giveεá b∙á Reτá ├ 
  74.                                       (0...76)
  75.      SETSE├á      E821╚á           Se⌠á secto≥á addres≤ giveεá b∙á Reτá ├ 
  76.                                       (1...26)
  77.      SETDMA       E824H            Set subsequent DMA address (RP B&C)
  78.      READ         E827H            Read track/sector (block)
  79.      WRITE        E82AH            Write track/sector (block)
  80.      LISTST       E82DH            List Device Status
  81.                                     Reg A = 00 if no char ready
  82.                                     Reg A = FF if char ready
  83.      SECTRA╬á     E830╚            Translatσ  secto≥ numbe≥ iε Reτ ├á usinτ ì
  84.                                     tablσ pointeΣ t∩ b∙ DE╗ physica∞ secto≥ ì
  85.                                     number returned in Reg L
  86. :I/O Status Byte Organization/Meaning
  87.            Most Significant           Least Significant
  88.      Bits      Bits 6,7    Bits 4,5    Bits 2,3    Bits 0,1
  89.      Device    LIST        PUNCH       READER      CONSOLE
  90.  
  91.      Value
  92.        00      TTY:        TTY:        TTY:        TTY:
  93.        01      CRT:        PTP:        PTR:        CRT:
  94.        10      LPT:        UP1:        UR1:        BAT:
  95.        11      UL1:        UP2:        UR2:        UC1:
  96.  
  97. BAT = batch mode.  use the READER as the CONSOLE input, and the LIST
  98.       device as the CONSOLE output
  99. CRT = Console CRT device
  100. LPT = List is the printer device
  101. PTP = Punch is a high speed punch device
  102. PTR = Reader is the high speed reader device
  103. TTY = Printer teletype device
  104. UC1 = User defined console device
  105. UL1 = User defined list device
  106. UPn = User definced punch
  107. URn = User defined reader
  108.