home *** CD-ROM | disk | FTP | other *** search
/ Garbo / Garbo.cdr / pc / bootutil / reboot.zoo / reboot.asm
Assembly Source File  |  1990-01-09  |  3KB  |  66 lines

  1.  
  2.                 page    60,132
  3.                 title   REBOOT.ASM = Performs a Warm System Boot =
  4.  
  5.                 PUBLIC REBOOT
  6.  
  7. ;=======================================================================;
  8. ;                                                                       ;
  9. ;       This segment is used to reference a "JMP" instruction in        ;
  10. ;       ROM which branch to the reboot code in ROM.                     ;
  11. ;                                                                       ;
  12. ;=======================================================================;
  13.  
  14. rom_seg         segment at 0ffffH
  15. boot_jmp        label   far
  16. rom_seg         ends
  17.  
  18. ;=======================================================================;
  19. ;                                                                       ;
  20. ;       This segment is used to reference a word in the BIOS data       ;
  21. ;       area which is used to determine if a WARM or COLD reboot        ;
  22. ;       should be performed by the reboot code in ROM.                  ;
  23. ;                                                                       ;
  24. ;=======================================================================;
  25.  
  26. bios_seg        segment at 0040H
  27.                 org     bios_seg+72H
  28. boot_flags      label   word
  29. bios_seg        ends
  30.  
  31. cold_boot       equ     0000H           ;Value to indicate COLD reboot
  32. warm_boot       equ     1234H           ;Value to indicate WARM reboot
  33.  
  34.  
  35.                 page
  36. ;=======================================================================;
  37. ;                                                                       ;
  38. ;       The following lines set the boot flags in the BIOS Data         ;
  39. ;       Area and then invoke the boot code in the BIOS ROM.             ;
  40. ;                                                                       ;
  41. ;=======================================================================;
  42.  
  43. code_seg        segment
  44.                 assume  CS:code_seg, DS:code_seg
  45.                 org     code_seg+100H
  46.  
  47. reboot          proc
  48.                 mov     AX,bios_seg
  49.                 mov     DS,AX           ;Point to BIOS Data Area
  50.                 assume  DS:bios_seg
  51.                 mov     boot_flags,warm_boot
  52.  
  53.                 assume  DS:rom_seg
  54.                 jmp     boot_jmp        ;Jump to Reboot Code
  55. reboot          endp
  56.  
  57. code_seg        ends
  58.  
  59.                 end
  60. -- 
  61.       harvard\     att!nicmad\              cs.wisc.edu!astroatc!vidiot!brown
  62. Vidiot  ucbvax!uwvax..........!astroatc!vidiot!brown
  63.       rutgers/  decvax!nicmad/   INTERNET:<@cs.wisc.edu,@astroatc:brown@vidiot>
  64.  
  65.  
  66.