home *** CD-ROM | disk | FTP | other *** search
/ CP/M / CPM_CDROM.iso / simtel / sigm / vols000 / vol008 / boot.asm < prev    next >
Encoding:
Assembly Source File  |  1984-04-29  |  807 b   |  61 lines

  1. ;    4 8 K    S T A N D A R D I Z E D    B O O T
  2. ;
  3. ;    NOTE:  MSIZE AND BIOSSZ DETERMINES WHERE THIS BOOT LOADS THE SYSTEM
  4. ;
  5. MSIZE    EQU    48
  6. BIOSSZ    EQU    512
  7. ;
  8. BOOT    EQU    0
  9. START    EQU    MSIZE*1024-BIOSSZ-1024
  10. ENDPT    EQU    MSIZE*1024
  11. NSECTS    EQU    (ENDPT-START)/128
  12. STACK    EQU    100H
  13. ;
  14. LOWTRK    EQU    0
  15. LOWSCT    EQU    2
  16. LOWSZE    EQU    NSECTS
  17. ;
  18. IOBYTE    EQU    0
  19. ACTDSK    EQU    0
  20. ;
  21. ;
  22. ;
  23.     ORG    BOOT
  24. ;
  25. ;
  26.     LXI    SP,STACK
  27. INIT:
  28. MAIN:
  29.     MVI    C,LOWTRK    ;NOW WE READ ONE TRACK
  30.     CALL    SETTRK
  31.     LXI    B,START        ;SET STARTING RAM LOCATION
  32.     LXI    D,LOWSZE SHL 8 + LOWSCT
  33.     CALL    DO$READ
  34.     LXI    H,ACTDSK SHL 8 + IOBYTE
  35.     SHLD    3
  36.     JMP    START
  37. ;
  38. ;
  39. DO$READ:
  40.     PUSH    B
  41.     PUSH    D
  42.     CALL    SETDMA
  43.     POP    D
  44.     MOV    C,E
  45.     PUSH    D
  46.     CALL    SETSEC
  47.     CALL    READ
  48.     POP    D
  49.     POP    B
  50.     LXI    H,128
  51.     DAD    B
  52.     MOV    B,H
  53.     MOV    C,L
  54.     INR    E
  55.     DCR    D
  56.     JNZ    DO$READ
  57.     RET
  58. ;
  59. ;
  60.     END    BOOT
  61.