Source code of Windows XP (NT5)
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.

71 lines
1.5 KiB

  1. ; TITLE MSHEAD.ASM -- MS-DOS DEFINITIONS
  2. PAGE
  3. ; NTDOS.SYS entry point.
  4. ;
  5. ; Modification History
  6. ;
  7. ; sudeepb 06-Mar-1991 Ported for DOSEm.
  8. include origin.inc
  9. Break <SEGMENT DECLARATIONS>
  10. ; The following are all of the segments used. They are declared in the order
  11. ; that they should be placed in the executable
  12. ;
  13. ; segment ordering for MSDOS
  14. ;
  15. include dosseg.inc
  16. AsmVar <Installed>
  17. DOSCODE SEGMENT BYTE PUBLIC 'CODE'
  18. PUBLIC $STARTCODE
  19. $STARTCODE LABEL WORD
  20. ASSUME CS:DOSCODE,DS:NOTHING,ES:NOTHING,SS:NOTHING
  21. ; the entry point at initialization time will be to right here.
  22. ; A jump will be made to the initialization code, which is at
  23. ; the end of the code segment. Also, a word here (at offset 3)
  24. ; contains the offset within the DOSCODE segment of the beginning of the
  25. ; DOS code.
  26. ;
  27. Extrn DOSINIT:NEAR
  28. JMP near ptr DOSINIT
  29. ; The next word contains the ORG value to which the DOS has been ORGd
  30. ; See origin.inc for description.
  31. dw PARASTART ; For BIOS to know the ORG value
  32. ; Segment address of BIOS data segment in RAM
  33. PUBLIC BioDataSeg
  34. ifndef NEC_98
  35. BioDataSeg dw 70h ;Bios data segment fixed at 70h
  36. else ;NEC_98
  37. BioDataSeg dw 60h ;Bios data segment fixed at 60h
  38. endif ;NEC_98
  39. ;
  40. ; DosDSeg is a data word in the DOSCODE segment that is loaded with
  41. ; the segment address of DOSDATA. This is purely an optimization, that
  42. ; allows getting the DOS data segment without going through the
  43. ; BIOS data segment. It is used by the "getdseg" macro.
  44. ;
  45. public DosDSeg
  46. DosDSeg dw ?
  47. DOSCODE ENDS
  48.