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.

92 lines
2.0 KiB

  1. CODE SEGMENT
  2. ASSUME CS:CODE,DS:CODE
  3. ORG 100h
  4. Start:
  5. jmp PrgStart
  6. LogoPos = 0600h
  7. ;------------------------
  8. LogoMsg label byte
  9. db ' ****** Mode Set Program ****** ',cr,lf
  10. db '(C)Copyright Qnix Co., Ltd. 1993 ',cr,lf
  11. db ' resolution ',cr,lf
  12. db ' 0 = 132x44 (1188x396) ',cr,lf
  13. db ' 1 = 132x28 (1188x448) ',cr,lf
  14. db ' 2 = 132x43 (1188x387) ',cr,lf
  15. db ' 3 = 132x25 (1188x400) ',cr,lf
  16. db ' 4 = 132x50 (1056x400) ',cr,lf
  17. db ' 5 = 80x25 (640x480) ',cr,lf
  18. db ' select 0~5 ',cr,lf
  19. db ' ',cr,lf
  20. db ' ex) hecon /5 ,cr,lf
  21. LogoLng = $-LogoMsg
  22. PrgStart:
  23. push ax
  24. push bx
  25. push cx
  26. push dx
  27. push ds
  28. push es
  29. push si
  30. push di
  31. push bp
  32. mov ax,cs
  33. mov ds,ax
  34. mov es,ax
  35. call ParsCommand
  36. pop bp
  37. pop di
  38. pop si
  39. pop es
  40. pop ds
  41. pop dx
  42. pop cx
  43. pop bx
  44. pop ax
  45. Exit:
  46. mov ah,4ch
  47. int 21h
  48. ;------------------------------------------------------------------------
  49. Modeset:
  50. mov ax,00
  51. int 10h
  52. ret
  53. ParsCommand:
  54. mov si,81h
  55. @@:
  56. lodsb
  57. cmp al,cr
  58. je ParsEnd
  59. cmp al,lf
  60. je ParsEnd
  61. cmp al,'/'
  62. jnz @b
  63. lodsb
  64. cmp al,'?'
  65. je Document
  66. cmp al,'0'
  67. jb ParsEnd
  68. cmp al,'9'
  69. ja ParsEnd
  70. jmp ModeSet
  71. ParsEnd:
  72. ret
  73. Document:
  74. mov bp,offset LogoMsg
  75. mov dx,LogoPos
  76. mov cx,LogoLng
  77. mov bl,07h
  78. xor bh,bh
  79. mov ax,1300h
  80. int 10h
  81. ret