Subversion Repositories SvarDOS

Rev

Rev 1730 | Rev 1849 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 1730 Rev 1846
Line 66... Line 66...
66
                                    ;        REDIR_INFIL!
66
                                    ;        REDIR_INFIL!
67
 
67
 
68
EXEC_LH: db 0                       ; +271h  EXECPROG to be loaded high?
68
EXEC_LH: db 0                       ; +271h  EXECPROG to be loaded high?
69
ORIG_UMBLINKSTATE: db 0             ; +272h
69
ORIG_UMBLINKSTATE: db 0             ; +272h
70
ORIG_ALLOCSTRAT: db 0               ; +273h
70
ORIG_ALLOCSTRAT: db 0               ; +273h
-
 
71
CTRLC_FLAG: db 0                    ; +274h  flag that says "aborted by CTRL+C"
71
 
72
 
72
; CTRL+BREAK (int 23h) handler
73
; CTRL+BREAK (int 23h) handler
73
; According to the TechHelp! Manual: "If you want to abort (exit to the parent
74
; According to the TechHelp! Manual: "If you want to abort (exit to the parent
74
; process), then set the carry flag and return via a FAR RET. This causes DOS
75
; process), then set the carry flag and return via a FAR RET. This causes DOS
75
; to perform normal cleanup and exit to the parent." (otherwise use iret)
76
; to perform normal cleanup and exit to the parent." (otherwise use iret)
76
BREAK_HANDLER:            ; +274h
77
BREAK_HANDLER:            ; +275h
-
 
78
mov [CTRLC_FLAG], byte 1  ; checked by SvarCOM to abort BAT files
77
stc
79
stc
78
retf
80
retf
79
 
81
 
80
; INT 0x2E handler
82
; INT 0x2E handler
81
INT2E:
83
INT2E:
82
xor ax, ax
84
xor ax, ax
83
iret
85
iret
84
 
86
 
85
skipsig:                  ; +279h
87
skipsig:                  ; +27Fh
86
 
88
 
87
; set up CS=DS=SS and point SP to my private stack buffer
89
; set up CS=DS=SS and point SP to my private stack buffer
88
mov ax, cs
90
mov ax, cs
89
mov ds, ax
91
mov ds, ax
90
mov es, ax
92
mov es, ax