home *** CD-ROM | disk | FTP | other *** search
/ Oakland CPM Archive / oakcpm.iso / sigm / sigmv068.ark / TURNKEY.PAT < prev    next >
Text File  |  1984-04-29  |  3KB  |  64 lines

  1. ;    BIOS PATCH FOR COLD BOOT COMMAND EXECUTION
  2. ;
  3. ;************************************************************
  4. ;THE FOLLOWING CODE SHOULD BE ADDED IN THE COLD BOOT SECTION
  5. ;OF BIOS BEFORE THE JUMP TO THE CCP IS MADE.  IT MAY BE LOCATED
  6. ;IN THE DEVICE DRIVER INITIALIZATION SECTION OF YOUR BIOS OR IN
  7. ;ANY SECTION OF BIOS THAT IS OVERWRITTEN BY BUFFERS AND CALLED
  8. ;FROM THE COLD BOOT SECTION BUT UNDER NO CIRCUMSTANCES SHOULD
  9. ;IT BE LOCATED SO THAT ANY PORTION OF IT OCCUPIES SPACE ABOVE
  10. ; BIOS + 380H AS THIS SPACE MAY EXIST IN MEMORY BUT IT DOES
  11. ;NOT EXIST ON A SINGLE DENSITY SYSTEM.(TRACK1,SECTOR 26 HOLDS
  12. ;MEMORY FROM BIOS+300H TO BIOS+37FH).
  13. ;USE THE CODEND AND DSKEND EQUATES TO INSURE THAT IT WILL FIT.
  14. ;CHECK THE REST OF THE CODE TO INSURE THAT IT DOESN'T PASS
  15. ;DSKEND TOO.
  16. ; ALSO CHECK TO SEE IF ANY REGISTERS NEED TO BE SAVED AS
  17. ;THIS ROUTINE AFFECTS PSW, D/E, AND H/L.  THEY SHOULD BE
  18. ;PUSHED PRIOR AND POPPED AFTER IF IN DOUBT.
  19. ; ALSO CHECK THE END OF YOUR BIOS COLD BOOT ROUTINE TO SEE IF
  20. ;IT JUMPS TO CCP OR TO CCP+3.  IF IT GOES TO CCP+3 IT WILL
  21. ;CLEAR THE COMMAND FROM THE BUFFER BEFORE EXECUTING IT, AND
  22. ;MUST BE CHANGED TO JUST 'CCP'.
  23. ;
  24. ;**********  CODE STARTS HERE  **************
  25. ;
  26. ; OFFSET USED FOR COLD BOOT MESAGE
  27. CCPBUF    EQU    CCP+7    ;LOC TO PUT COLD BOOT COMMAND
  28. BUFLEN    EQU    32    ;OR WHATEVER YOUR SYSTEM REQUIRES
  29.             ;SHOULD MATCH THE OTHER SECTIONS
  30. ;
  31. ; THE ACTUAL COLD BOOT BUFFER IS LOCATED IN THE UNUSED
  32. ; SECTION OF BDOS JUST BEFORE BIOS'S ORG LOCATION.
  33. ; EVEN IF BDOS NEEDS THIS AREA, IT IS ONLY USED BY BIOS
  34. ; BEFORE THE JUMP TO BDOS, AND AT THAT TIME IT MAY BE
  35. ; OVERWRITTEN SINCE IT WILL BE RELOADED FROM DISK IF NEEDED.
  36. ;
  37. MESSAG    EQU    BIOS-BUFLEN-3    ;PUT MESSAGE IN UNUSED
  38.                 ;SECTION OF BDOS
  39. ;
  40. ; COPY STRING ROUTINE FROM BIOS BUFFER TO CCP BUFFER
  41. ; ONLY DURING COLD BOOT.
  42. ;
  43.     LXI    H,CCPBUF    ;POINT TO CCP BUFFER
  44.     LXI    D,MESSAG    ;POINT TO MESSAGE
  45. MSGLOP:    LDAX    D        ;GET BYTE
  46.     MOV    M,A        ;PUT IT
  47.     INX    D        ;NEXT SOURCE
  48.     INX    H        ;NEXT DESTINATION
  49.     ORA    A        ;DID WE DO ZERO
  50.     JNZ    MSGLOP        ;LOOP TILL WE DID
  51. ;
  52. CODEND    EQU    $        ;END OF CODE
  53.     ;NOTE:  CODEND MAY BE PUT AT THE END OF YOUR
  54.     ;BIOS CODE TO GIVE YOU AN INDICATION THAT IT
  55.     ; WILL OR WILL NOT FIT ON THE SYSTEM TRACKS.
  56. ;
  57. DSKEND    EQU    BIOS+380H    ;END OF SYSTEM ON DISK
  58.     ; IF THE VALUE OF 'CODEND' IS GREATER THAN
  59.     ; THE VALUE OF 'DSKEND', THEN THE CODE
  60.     ; WILL NOT FIT ON A SINGLE DENSITY SYSTEM DISK.
  61. ;
  62. ;**********************************************************
  63. ; END OF MODIFICATIONS
  64.