Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

59 lines
1.5 KiB

  1. ; MSBDATA.INC
  2. ;
  3. ; This file defines some locations in the BIOS data segment that are
  4. ; accessed by code outside the BIOS, e.g. by the DOS and by the ROMDOS
  5. ; loader.
  6. ;
  7. ifndef In_Bios ; if we're actually running in the BIOS,
  8. ; ; then our segment is already open and
  9. ; ; we'll actually generate code
  10. ifndef NEC_98
  11. Bdata segment at 70h
  12. assume cs:Bdata
  13. org 3 ; fixed location in Bios_Data segment
  14. else ;NEC_98
  15. Bdata segment at 60h
  16. assume cs:Bdata
  17. org 23h ; fixed location in Bios_Data segment
  18. endif ;NEC_98
  19. int_2f = 0 ; define dummy so msbdata will assemble
  20. endif
  21. public dosdatasg
  22. DosDataSg dw 0 ; Let DOS find it's data segment through here
  23. ; Note: this value is set by the ROMDOS loader
  24. ; to tell where the DOS data and init code
  25. ; has been loaded into RAM
  26. ; dos's int 2f handler will exit via a jump through here. This is
  27. ; how the BIOS hooks int2f
  28. public bios_i2f ; M012
  29. bios_i2f proc far
  30. ; jmp int_2f ; assembler won't generate forward
  31. ; ; reference to a far label
  32. db 0eah
  33. dd int_2f ; generate manual far jump
  34. bios_i2f endp
  35. public romstartaddr
  36. romstartaddr dw 0 ; The start address for the romfind routines
  37. ; is obtained from here (70:A)
  38. ; This is a byte used for special key handling in the resident
  39. ; console device driver. It must be here so that it can be included
  40. ; in the WIN386 instance table (in INC\LMSTUB.ASM).
  41. public altah
  42. altah db 0 ;special key handling
  43. ifndef In_Bios
  44. Bdata ends
  45. endif
  46.