;
;
;           BIOS CP/M
;
;          "-128"
;
;    :  . .
;
;       .-, 1990
;
;
;
;
ACTSTR  SET      1    ;  ,  .  CP/M
QDEV    SET      2    ; - .  (1-4)
NUMEXTD SET      4    ;   ( 4-E:,5-F:,...)
;
CCP:    EQU 0C400H    ;  CCP
BDOS:   EQU CCP+0806H ;  BDOS
BIOS:   EQU CCP+1600H ;  BIOS
;
CURDV:  EQU  0004H    ;  -  
IOBYTE: EQU  0003H    ;  -   
;
;     
;
RGUPR:  EQU  0F704H ;   
RGSEC:  EQU  0F702H ;   
RGTRK:  EQU  0F701H ;   
RGDATA: EQU  0F703H ;   
RGCOM:  EQU  0F700H ;   
;
;    ,
;     BIOS'
;
CONT1:  EQU  0F809H ;    
CONST1: EQU  0F812H ;   
CONINM: EQU  0F803H ;    
LSTOUT: EQU  0F821H ;    
;
DRVM:   EQU  0F300H ;   ,
;                        
;                      
;
;
        ORG BIOS
;
;
;       BIOS
;
;
        JMP BOOT   ;  
WBOOT:  JMP WBT    ;  
        JMP CONST  ;  
        JMP CONIN  ;    
        JMP CONOUT ;    
        JMP LIST   ;   
        JMP PUSCH  ;    
        JMP READER ;    
        JMP HOME   ;     
        JMP SELDSK ;  
        JMP SETTRK ;     
        JMP SETSEC ;   
        JMP SETDMA ;    
        JMP READ   ;  
        JMP WRITE  ;  
        JMP LISTST ;  
        JMP SECTRN ;   
;
;     
;
;   * -    BOOT-
;
DEVA:DW   TRNSEC ;     A:
    DW   00H
    DW   00H
    DW   00H
    DW   DIRBUF
    DW   DPB00
    DW   CHK00
    DW   ALL00
;
DEVB:DW   TRNSEC ;     B:
    DW   00H
    DW   00H
    DW   00H
    DW   DIRBUF
    DW   DPB01
    DW   CHK01
    DW   ALL01
;
;    ,  
;
;     A:
;
    DB   50H ;      A:
    DB   50H ; *   
    DB   00H ;    
    DB   05H ; *  . 
    DB   01H ; *   . 
    DB   03H ; * -   128 .  . 
;                (1-2 ,2-4 .,3-8 .)
    DB   00H ;  
    DB   10H ; ,  .  
;                 
LAF:DB   00H ; ,    
;                  
DPB00:DW   28H ; * - .   128 .  
    DB   04H   ; *   (3- 1K ,4-2K)
    DB   0FH   ; *   (7- 1 ,15-2K)
    DB   00H   ; *   (0 -16K)
    DW   184H  ; *     
    DW   7FH   ; *     - 1
    DB   0C0H  ; *   
    DB   00H   ; *   
    DW   20H   ; *   
    DW   04H   ; *   
;
;     B:
;
;          A:
;
    DB   50H
    DB   50H ; *
    DB   00H
    DB   05H ; *
    DB   01H ; *
    DB   03H ; *
    DB   00H
    DB   11H
LB0:DB   00H
DPB01:DW   28H ; * 
    DB   04H   ; *
    DB   0FH   ; *
    DB   00H   ; *
    DW   184H  ; *
    DW   7FH   ; *
    DB   0C0H  ; *
    DB   00H   ; *
    DW   20H   ; *
    DW   04H   ; *
;
;
;       
;   (      )
;
SELE: JMP L02   ;  
RDE:  JMP DUMMY ;     
WRE:  JMP DUMMY ;     
;
TRACK: DB   00H ;   (  / HOME,
;                 SETTRK )
SECTOR:DB   01H ;   (  / SETSEC )
BUFDMA:DW   80H ;    (  /
;                 SETDMA )
;
;      RDE  WRE     
;      TRACK  SECTOR; 
;     BUFDMA.
; 
SPACE:DS    512 ;     
;
; *********     ********
;
;
    DB   'COPYRIGHT (C) 1990,  . .'
;
L95:DB   1FH
    DB   0DH
    DB   0AH
    DB   ' 60K  CP/M-80  V2.2',0DH,0AH
    DB   '*** BIOS    V2.0 ***',0DH,0AH
    DB   '* SP-COMPUTER CLUB *',0DH,0AH
    DB   '** LENINGRAD-1990 **',0DH,0AH
    DB   0
;
;    00
;
HOME: MVI  C,00H
;
;   
;  C -  
;
SETTRK:MOV  A,C
    STA  TRACK
DUMMY:RET
;
;    
;   : C -   (0 - A:,1 - B:)
;   : HL -      
;          HL=0       
;
SELDSK:MOV  A,C

    CP/M   ( .  
"")     ..
