<section style="padding: 0.5em;max-width: 100%;font-size: 0.85em;font-family: Consolas, Menlo, Courier, monospace;overflow: auto;color: rgb(171, 178, 191);min-width: 400px;background: none 0% 0% / auto repeat scroll padding-box border-box rgb(40, 44, 52);margin-left: 8px;margin-right: 8px;box-sizing: border-box !important;overflow-wrap: break-word !important;display: block !important;"><span style="max-width: 100%;font-size: 14px;box-sizing: border-box !important;overflow-wrap: break-word !important;">;<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; RI.ASM Revision <span style="max-width: 100%;color: rgb(209, 154, 102);">2.12</span> [ July <span style="max-width: 100%;color: rgb(209, 154, 102);">12</span>, <span style="max-width: 100%;color: rgb(209, 154, 102);">1994</span> ]<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />Revision equ <span style="max-width: 100%;color: rgb(152, 195, 121);">'V2.12 '</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />;<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />;<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />;<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; RAMinit Release <span style="max-width: 100%;color: rgb(209, 154, 102);">2.0</span> <br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; Copyright (c) <span style="max-width: 100%;color: rgb(209, 154, 102);">1989-1994</span> by Yellow Rose Software Co.<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; Written by Mr. Leijun<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />;<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; Function:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; Press HotKey to remove all TSR program after <span style="max-width: 100%;color: rgb(198, 120, 221);">this</span> program<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />;<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />;<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; ..........................................................................<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; Removed Softwares by RI:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; SPDOS v6<span style="max-width: 100%;color: rgb(209, 154, 102);">.0F</span>, WPS v3<span style="max-width: 100%;color: rgb(209, 154, 102);">.0F</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; Game Busters III, IV<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; NETX ( Novell <span style="max-width: 100%;color: rgb(209, 154, 102);">3.11</span> )<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; PC-CACHE<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; Norton Cache<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; Microsoft SmartDrv<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; SideKick <span style="max-width: 100%;color: rgb(209, 154, 102);">1.56</span>A<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; MOUSE Driver<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; Crazy (Monochrome simulate CGA program)<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; RAMBIOS v2<span style="max-width: 100%;color: rgb(209, 154, 102);">.0</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; <span style="max-width: 100%;color: rgb(209, 154, 102);">386</span>MAX Version <span style="max-width: 100%;color: rgb(209, 154, 102);">6.01</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; ..........................................................................<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; No cancel softwares:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; Windows <span style="max-width: 100%;color: rgb(209, 154, 102);">3.1</span> MSD<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />;<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; No removed TSR softwares:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; MS-DOS fastopen<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; Buffers, Files ... (QEMM <span style="max-width: 100%;color: rgb(209, 154, 102);">6.0</span>)<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; QCache (<span style="max-width: 100%;color: rgb(209, 154, 102);">386</span>MAX <span style="max-width: 100%;color: rgb(209, 154, 102);">6.01</span>)<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; ..........................................................................<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />;<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />COMMENT<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />V2<span style="max-width: 100%;color: rgb(209, 154, 102);">.04</span> Use mouse driver software reset function to initiation mouse<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><span style="max-width: 100%;color: rgb(209, 154, 102);">2</span>/<span style="max-width: 100%;color: rgb(209, 154, 102);">17</span>/<span style="max-width: 100%;color: rgb(209, 154, 102);">1993</span> by Mr. Lei and Mr. Feng<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />V2<span style="max-width: 100%;color: rgb(209, 154, 102);">.05</span> RI cannot work in Windows DOS prompt<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><span style="max-width: 100%;color: rgb(209, 154, 102);">3</span>/<span style="max-width: 100%;color: rgb(209, 154, 102);">9</span>/<span style="max-width: 100%;color: rgb(209, 154, 102);">1993</span> by Mr. Lei<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />V2<span style="max-width: 100%;color: rgb(209, 154, 102);">.06</span> <span style="max-width: 100%;color: rgb(209, 154, 102);">1.</span> When XMS cannot allocate <span style="max-width: 100%;color: rgb(209, 154, 102);">1</span>K memory, RI halts.<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><span style="max-width: 100%;color: rgb(209, 154, 102);">2.</span> RI repeat deallocates EMS memory.<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />V2<span style="max-width: 100%;color: rgb(209, 154, 102);">.07</span> HotKey Setup Error<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><span style="max-width: 100%;color: rgb(209, 154, 102);">4</span>/<span style="max-width: 100%;color: rgb(209, 154, 102);">25</span>/<span style="max-width: 100%;color: rgb(209, 154, 102);">1993</span> by Mr. Lei<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />V2<span style="max-width: 100%;color: rgb(209, 154, 102);">.08</span> KB Buffer<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />V2<span style="max-width: 100%;color: rgb(209, 154, 102);">.10</span> <span style="max-width: 100%;color: rgb(209, 154, 102);">1.</span> Release high memory <span style="max-width: 100%;color: rgb(97, 174, 238);">blocks</span> (EMM386 QEMM386 S-ICE <span style="max-width: 100%;color: rgb(209, 154, 102);">386</span>MAX)<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />2. RI copies flag<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />V2.12 1. Exists a critical error in Init 8259 procedure<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />2. Save [40:F0--FF] user data area<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />dosseg<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />.model tiny<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />.code<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />locals @@<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />org 100h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />Start: jmp Main<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />org 103h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />True equ 1<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />False equ 0<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />MaxHandles equ 100h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />INT3 macro<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />out 0ffh,al<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />endm<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />;<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; HotKey Status Test Var<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; --------------- ---------------<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />;<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; <span style="max-width: 100%;color: rgb(209, 154, 102);">7</span> <span style="max-width: 100%;color: rgb(209, 154, 102);">6</span> <span style="max-width: 100%;color: rgb(209, 154, 102);">5</span> <span style="max-width: 100%;color: rgb(209, 154, 102);">4</span> <span style="max-width: 100%;color: rgb(209, 154, 102);">3</span> <span style="max-width: 100%;color: rgb(209, 154, 102);">2</span> <span style="max-width: 100%;color: rgb(209, 154, 102);">1</span> <span style="max-width: 100%;color: rgb(209, 154, 102);">0</span> <span style="max-width: 100%;color: rgb(209, 154, 102);">417</span> <span style="max-width: 100%;color: rgb(209, 154, 102);">418</span> <span style="max-width: 100%;color: rgb(209, 154, 102);">496</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; . . x . x . . . Left Alt is pressed <span style="max-width: 100%;color: rgb(209, 154, 102);">8</span> <span style="max-width: 100%;color: rgb(209, 154, 102);">2</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; x . . . x . . . Right Alt is pressed <span style="max-width: 100%;color: rgb(209, 154, 102);">8</span> <span style="max-width: 100%;color: rgb(209, 154, 102);">8</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; . . . x . x . . Left Ctrl is pressed <span style="max-width: 100%;color: rgb(209, 154, 102);">4</span> <span style="max-width: 100%;color: rgb(209, 154, 102);">1</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; . x . . . x . . Right Ctrl is pressed <span style="max-width: 100%;color: rgb(209, 154, 102);">4</span> <span style="max-width: 100%;color: rgb(209, 154, 102);">4</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; . . . . . . x . Left Shift is pressed <span style="max-width: 100%;color: rgb(209, 154, 102);">2</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; . . . . . . . x Right Shift is pressed <span style="max-width: 100%;color: rgb(209, 154, 102);">1</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />;<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />LeftAlt equ <span style="max-width: 100%;color: rgb(209, 154, 102);">00101000b</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />RightAlt equ <span style="max-width: 100%;color: rgb(209, 154, 102);">10001000b</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />LeftCtrl equ <span style="max-width: 100%;color: rgb(209, 154, 102);">00010100b</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />RightCtrl equ <span style="max-width: 100%;color: rgb(209, 154, 102);">01000100b</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />LeftShift equ <span style="max-width: 100%;color: rgb(209, 154, 102);">00000010b</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />RightShift equ <span style="max-width: 100%;color: rgb(209, 154, 102);">00000001b</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />HotKey db LeftCtrl or RightCtrl<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />DataBegin dw <span style="max-width: 100%;color: rgb(209, 154, 102);">0</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />NextDataSeg dw <span style="max-width: 100%;color: rgb(209, 154, 102);">0f</span>fffh<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />oldInt2F_addr dw <span style="max-width: 100%;color: rgb(209, 154, 102);">0</span>, <span style="max-width: 100%;color: rgb(209, 154, 102);">0</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />XMS_control dw <span style="max-width: 100%;color: rgb(209, 154, 102);">0</span>, <span style="max-width: 100%;color: rgb(209, 154, 102);">0</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />Handle_begin dw <span style="max-width: 100%;color: rgb(209, 154, 102);">0</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />cvtOfs dw <span style="max-width: 100%;color: rgb(209, 154, 102);">0</span> ; DOS <span style="max-width: 100%;color: rgb(209, 154, 102);">3.0</span> equ <span style="max-width: 100%;color: rgb(209, 154, 102);">0</span> and above DOS <span style="max-width: 100%;color: rgb(209, 154, 102);">4.0</span> is <span style="max-width: 100%;color: rgb(209, 154, 102);">1</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />org <span style="max-width: 100%;color: rgb(209, 154, 102);">104</span>h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />db <span style="max-width: 100%;color: rgb(209, 154, 102);">0</span>dh<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />db Revision<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />db ??date<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />db <span style="max-width: 100%;color: rgb(209, 154, 102);">26</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />org <span style="max-width: 100%;color: rgb(209, 154, 102);">114</span>h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />tsrLength dw <span style="max-width: 100%;color: rgb(209, 154, 102);">0</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />MachineID db <span style="max-width: 100%;color: rgb(209, 154, 102);">0F</span>Ch ; IBM PC/AT<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />AuxHotKey db <span style="max-width: 100%;color: rgb(209, 154, 102);">0</span> ; <span style="max-width: 100%;color: rgb(209, 154, 102);">2</span>Dh ; <span style="max-width: 100%;color: rgb(152, 195, 121);">'X'</span> Scan Code<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />AuxHotKeyName db <span style="max-width: 100%;color: rgb(152, 195, 121);">'X$ '</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />Power db True<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />Flag db <span style="max-width: 100%;color: rgb(152, 195, 121);">'!'</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />Kbd102 db <span style="max-width: 100%;color: rgb(209, 154, 102);">0</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />NoFlag db <span style="max-width: 100%;color: rgb(209, 154, 102);">0</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />StopFlag db <span style="max-width: 100%;color: rgb(209, 154, 102);">1</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />DosEnv dw <span style="max-width: 100%;color: rgb(209, 154, 102);">0</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />WorkSeg dw <span style="max-width: 100%;color: rgb(209, 154, 102);">0</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />PrevDataSeg dw <span style="max-width: 100%;color: rgb(209, 154, 102);">0</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />Copies db <span style="max-width: 100%;color: rgb(152, 195, 121);">'1'</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />old_8259 db <span style="max-width: 100%;color: rgb(209, 154, 102);">0</span> ; <span style="max-width: 100%;color: rgb(209, 154, 102);">21</span>h port<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />db <span style="max-width: 100%;color: rgb(209, 154, 102);">0</span> ; a1h port<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />Status dw <span style="max-width: 100%;color: rgb(209, 154, 102);">0</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />XMSbit equ <span style="max-width: 100%;color: rgb(209, 154, 102);">00000001b</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />EMSbit equ <span style="max-width: 100%;color: rgb(209, 154, 102);">00000010b</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />SKbit equ <span style="max-width: 100%;color: rgb(209, 154, 102);">10000000b</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />GoINT1C: db <span style="max-width: 100%;color: rgb(209, 154, 102);">0</span>eah<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />oldInt1C_addr dw <span style="max-width: 100%;color: rgb(209, 154, 102);">0</span>, <span style="max-width: 100%;color: rgb(209, 154, 102);">0</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />newINT1C:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />test cs:Status, SKbit<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jnz GoINT1C<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />cmp cs:StopFlag, <span style="max-width: 100%;color: rgb(209, 154, 102);">0</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jz @@<span style="max-width: 100%;color: rgb(209, 154, 102);">0</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />;<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; Mr. Lei <span style="max-width: 100%;color: rgb(209, 154, 102);">2</span>/<span style="max-width: 100%;color: rgb(209, 154, 102);">8</span>/<span style="max-width: 100%;color: rgb(209, 154, 102);">1993</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; Problem: <span style="max-width: 100%;color: rgb(198, 120, 221);">if</span> WPS quit and reenter, old RI cann't control keyboard. ;<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push ds<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />xor ax, ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ds, ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ax, ds:[<span style="max-width: 100%;color: rgb(209, 154, 102);">94</span>]<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />cmp ax, offset NewInt9<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop ds<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jnz GoINT1C<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov cs:StopFlag, <span style="max-width: 100%;color: rgb(209, 154, 102);">0</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@<span style="max-width: 100%;color: rgb(209, 154, 102);">0</span>: push ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push ds<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push es<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />xor ax, ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ds, ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov es, ds:[<span style="max-width: 100%;color: rgb(209, 154, 102);">94</span>+<span style="max-width: 100%;color: rgb(209, 154, 102);">2</span>]<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />cmp word ptr es:[<span style="max-width: 100%;color: rgb(209, 154, 102);">101</span>h], <span style="max-width: 100%;color: rgb(152, 195, 121);">'IE'</span> ; <span style="max-width: 100%;color: rgb(152, 195, 121);">'LEI'</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jz @@<span style="max-width: 100%;color: rgb(209, 154, 102);">1</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />cli<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov cs:StopFlag, <span style="max-width: 100%;color: rgb(209, 154, 102);">1</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ax, ds:[<span style="max-width: 100%;color: rgb(209, 154, 102);">94</span>]<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov cs:oldINT9_addr2, ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ax, ds:[<span style="max-width: 100%;color: rgb(209, 154, 102);">94</span>+<span style="max-width: 100%;color: rgb(209, 154, 102);">2</span>]<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov cs:oldINT9_addr2[<span style="max-width: 100%;color: rgb(209, 154, 102);">2</span>], ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ds:[<span style="max-width: 100%;color: rgb(209, 154, 102);">94</span>], offset newINT9_2<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ds:[<span style="max-width: 100%;color: rgb(209, 154, 102);">94</span>+<span style="max-width: 100%;color: rgb(209, 154, 102);">2</span>], cs<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />sti<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@<span style="max-width: 100%;color: rgb(209, 154, 102);">1</span>: pop es<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop ds<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jmp GoINT1C<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; ----------------------------------------------------------------------<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; INT2F Func<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />;<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; AX = C0D7h Return RI segment in AX<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; AX = C0D8h Removes all TSR programs after RI<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; AX = C0D9h Removes all TSR programs include RI<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; AX = C0DAh Removes all RI copies<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; ----------------------------------------------------------------------<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />newINT2F:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />cmp ax, <span style="max-width: 100%;color: rgb(209, 154, 102);">0</span>c0d7h ; LEI Hanzi GB Code<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jnz @@<span style="max-width: 100%;color: rgb(209, 154, 102);">1</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push cs<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />iret<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@<span style="max-width: 100%;color: rgb(209, 154, 102);">1</span>: cmp ax, <span style="max-width: 100%;color: rgb(209, 154, 102);">0</span>c0d7h+<span style="max-width: 100%;color: rgb(209, 154, 102);">1</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jnz @@<span style="max-width: 100%;color: rgb(209, 154, 102);">2</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jmp KeepSelf<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@<span style="max-width: 100%;color: rgb(209, 154, 102);">2</span>: cmp ax, <span style="max-width: 100%;color: rgb(209, 154, 102);">0</span>c0d7h+<span style="max-width: 100%;color: rgb(209, 154, 102);">2</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jnz @@<span style="max-width: 100%;color: rgb(209, 154, 102);">3</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jmp NoKeepSelf<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@<span style="max-width: 100%;color: rgb(209, 154, 102);">3</span>: cmp ax, <span style="max-width: 100%;color: rgb(209, 154, 102);">0</span>c0d7h+<span style="max-width: 100%;color: rgb(209, 154, 102);">3</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jnz @@<span style="max-width: 100%;color: rgb(209, 154, 102);">9</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov cs:NextDataSeg, <span style="max-width: 100%;color: rgb(209, 154, 102);">-1</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov cs:Copies, <span style="max-width: 100%;color: rgb(152, 195, 121);">'1'</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jmp NoKeepSelf<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@<span style="max-width: 100%;color: rgb(209, 154, 102);">9</span>: jmp dword ptr cs:oldInt2F_addr<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />CallInt9:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />ret<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />newINT9_2:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov cs:NoFlag, <span style="max-width: 100%;color: rgb(209, 154, 102);">1</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pushf<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />db <span style="max-width: 100%;color: rgb(209, 154, 102);">9</span>ah ; call far ptr oldint9_addr<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />oldInt9_Addr2 dw <span style="max-width: 100%;color: rgb(209, 154, 102);">0</span>, <span style="max-width: 100%;color: rgb(209, 154, 102);">0</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jmp newINT9_proc<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />newINT9:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pushf<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />db <span style="max-width: 100%;color: rgb(209, 154, 102);">9</span>ah ; call far ptr oldint9_addr<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />oldInt9_Addr dw <span style="max-width: 100%;color: rgb(209, 154, 102);">0</span>, <span style="max-width: 100%;color: rgb(209, 154, 102);">0</span> cmp cs:NoFlag, <span style="max-width: 100%;color: rgb(209, 154, 102);">0</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jz newINT9_proc<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov cs:NoFlag, <span style="max-width: 100%;color: rgb(209, 154, 102);">0</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />iret<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />newINT9_proc:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />cmp cs:Flag, <span style="max-width: 100%;color: rgb(152, 195, 121);">'!'</span> ; busy ?<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jnz @@<span style="max-width: 100%;color: rgb(209, 154, 102);">0</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />iret<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@<span style="max-width: 100%;color: rgb(209, 154, 102);">0</span>:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov cs:Flag, <span style="max-width: 100%;color: rgb(152, 195, 121);">'!'</span> ; <span style="max-width: 100%;color: rgb(230, 192, 123);">set</span> busy flag<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push ax ; cmp hot key<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push bx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push es<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ax,<span style="max-width: 100%;color: rgb(209, 154, 102);">40</span>h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov es,ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />cmp cs:AuxHotKey, <span style="max-width: 100%;color: rgb(209, 154, 102);">0</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jz @@_1<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov bx, es:[<span style="max-width: 100%;color: rgb(209, 154, 102);">1</span>ah]<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />cmp bx, es:[<span style="max-width: 100%;color: rgb(209, 154, 102);">1</span>ch]<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jz @@<span style="max-width: 100%;color: rgb(209, 154, 102);">10</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push bx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov bl, es:[bx+<span style="max-width: 100%;color: rgb(209, 154, 102);">1</span>]<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />cmp bl, cs:AuxHotKey<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop bx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jnz @@<span style="max-width: 100%;color: rgb(209, 154, 102);">10</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@_1:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ah,es:[<span style="max-width: 100%;color: rgb(209, 154, 102);">17</span>h] ; test CTRL SHIFT ALT<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov al,cs:HotKey<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />and ax,<span style="max-width: 100%;color: rgb(209, 154, 102);">0f</span>0fh<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />cmp al,ah<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jnz @@<span style="max-width: 100%;color: rgb(209, 154, 102);">10</span> cmp cs:Kbd102, True<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jnz @@<span style="max-width: 100%;color: rgb(209, 154, 102);">1</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />shr al, <span style="max-width: 100%;color: rgb(209, 154, 102);">1</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />shr al, <span style="max-width: 100%;color: rgb(209, 154, 102);">1</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />shr al, <span style="max-width: 100%;color: rgb(209, 154, 102);">1</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />shr al, <span style="max-width: 100%;color: rgb(209, 154, 102);">1</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ah, es:[<span style="max-width: 100%;color: rgb(209, 154, 102);">18</span>h]<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />and ax, <span style="max-width: 100%;color: rgb(209, 154, 102);">303</span>h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />cmp al, ah<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jnz @@<span style="max-width: 100%;color: rgb(209, 154, 102);">10</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ah, es:[<span style="max-width: 100%;color: rgb(209, 154, 102);">96</span>h]<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />shr ax, <span style="max-width: 100%;color: rgb(209, 154, 102);">1</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />shr ax, <span style="max-width: 100%;color: rgb(209, 154, 102);">1</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />and ax, <span style="max-width: 100%;color: rgb(209, 154, 102);">303</span>h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />cmp al, ah<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jnz @@<span style="max-width: 100%;color: rgb(209, 154, 102);">10</span> cmp cs:AuxHotKey, <span style="max-width: 100%;color: rgb(209, 154, 102);">0</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jz @@_3<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />inc bx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />inc bx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />cmp bx, <span style="max-width: 100%;color: rgb(209, 154, 102);">3</span>eh<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jb @@_2<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov bx, <span style="max-width: 100%;color: rgb(209, 154, 102);">1</span>eh<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@_2:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov es:[<span style="max-width: 100%;color: rgb(209, 154, 102);">1</span>ah], bx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@_3:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />call IsWinDos<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />or ax, ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jz @@<span style="max-width: 100%;color: rgb(209, 154, 102);">1</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />call Beep<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@<span style="max-width: 100%;color: rgb(209, 154, 102);">10</span>:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />sti<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop es<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop bx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov cs:Flag, <span style="max-width: 100%;color: rgb(152, 195, 121);">' '</span> ; no busy<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />iret<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@<span style="max-width: 100%;color: rgb(209, 154, 102);">1</span>: ; OK<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop es<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop bx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />KeepSelf:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />call RemoveTSR<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push es<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov es,cs:WorkSeg<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov dx,es:tsrLength<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov di,dx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov al,<span style="max-width: 100%;color: rgb(209, 154, 102);">0</span>h ; Aug <span style="max-width: 100%;color: rgb(209, 154, 102);">24</span>, <span style="max-width: 100%;color: rgb(209, 154, 102);">1993</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov cx,<span style="max-width: 100%;color: rgb(209, 154, 102);">100</span>h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />rep stosb<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop es<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><span style="max-width: 100%;color: rgb(198, 120, 221);">int</span> <span style="max-width: 100%;color: rgb(209, 154, 102);">27</span>h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />NoKeepSelf:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ax,<span style="max-width: 100%;color: rgb(209, 154, 102);">0e07</span>h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><span style="max-width: 100%;color: rgb(198, 120, 221);">int</span> <span style="max-width: 100%;color: rgb(209, 154, 102);">10</span>h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov cs:clsStr, <span style="max-width: 100%;color: rgb(209, 154, 102);">47</span>h ; Color (White in Red)<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />call RemoveTSR<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />dec cs:Copies<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />call RestoreSelfIntVec<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push es<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />cmp cs:PrevDataSeg, <span style="max-width: 100%;color: rgb(209, 154, 102);">0</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jz @@<span style="max-width: 100%;color: rgb(209, 154, 102);">1</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov es, cs:PrevDataSeg<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov es:NextDataSeg, <span style="max-width: 100%;color: rgb(209, 154, 102);">-1</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@<span style="max-width: 100%;color: rgb(209, 154, 102);">1</span>: pop es<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ax, <span style="max-width: 100%;color: rgb(209, 154, 102);">4</span>c00h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><span style="max-width: 100%;color: rgb(198, 120, 221);">int</span> <span style="max-width: 100%;color: rgb(209, 154, 102);">21</span>h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; ---------------------------------------------------------------------------<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />IsWinDOS:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ax, <span style="max-width: 100%;color: rgb(209, 154, 102);">1600</span>h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><span style="max-width: 100%;color: rgb(198, 120, 221);">int</span> <span style="max-width: 100%;color: rgb(209, 154, 102);">2f</span>h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />cmp al, <span style="max-width: 100%;color: rgb(209, 154, 102);">01</span>h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jz @@<span style="max-width: 100%;color: rgb(209, 154, 102);">9</span> cmp al, <span style="max-width: 100%;color: rgb(209, 154, 102);">0f</span>fh<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jz @@<span style="max-width: 100%;color: rgb(209, 154, 102);">9</span> ; Windows/<span style="max-width: 100%;color: rgb(209, 154, 102);">386</span> Version <span style="max-width: 100%;color: rgb(209, 154, 102);">2.</span>X<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />cmp al, <span style="max-width: 100%;color: rgb(209, 154, 102);">00</span>h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jz @@<span style="max-width: 100%;color: rgb(209, 154, 102);">1</span> cmp al, <span style="max-width: 100%;color: rgb(209, 154, 102);">80</span>h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jnz @@<span style="max-width: 100%;color: rgb(209, 154, 102);">9</span> ; Windows <span style="max-width: 100%;color: rgb(209, 154, 102);">3</span> in enhanced mode<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; Version number in AL/AH<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@<span style="max-width: 100%;color: rgb(209, 154, 102);">1</span>:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ax, <span style="max-width: 100%;color: rgb(209, 154, 102);">4680</span>h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><span style="max-width: 100%;color: rgb(198, 120, 221);">int</span> <span style="max-width: 100%;color: rgb(209, 154, 102);">2f</span>h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />cmp al, <span style="max-width: 100%;color: rgb(209, 154, 102);">80</span>h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jnz @@<span style="max-width: 100%;color: rgb(209, 154, 102);">9</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />xor ax, ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jmp @@<span style="max-width: 100%;color: rgb(209, 154, 102);">10</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@<span style="max-width: 100%;color: rgb(209, 154, 102);">9</span>: mov ax, <span style="max-width: 100%;color: rgb(209, 154, 102);">1</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@<span style="max-width: 100%;color: rgb(209, 154, 102);">10</span>: ret<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; -----------------------------------------------------------------------<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />RestoreSelfIntVec:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />cmp Copies, <span style="max-width: 100%;color: rgb(152, 195, 121);">'0'</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jz @@<span style="max-width: 100%;color: rgb(209, 154, 102);">0</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />ret<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@<span style="max-width: 100%;color: rgb(209, 154, 102);">0</span>:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />cli<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push cs<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop ds<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />xor ax, ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov es, ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov si, offset oldInt9_Addr<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov di, <span style="max-width: 100%;color: rgb(209, 154, 102);">94</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />movsw<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />movsw<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov si, offset oldInt2F_Addr<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov di, <span style="max-width: 100%;color: rgb(209, 154, 102);">2F</span>h4<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />movsw<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />movsw<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov si, offset oldInt1C_Addr<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov di, <span style="max-width: 100%;color: rgb(209, 154, 102);">1</span>Ch4<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />movsw<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />movsw<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />sti<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />ret<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; ------------- KERNEL PROGRAM ----------------------------------------------<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />RemoveTSR:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />cli ; Set <span style="max-width: 100%;color: rgb(230, 192, 123);">stack</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov sp, cs<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ss, sp<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov sp, <span style="max-width: 100%;color: rgb(209, 154, 102);">100</span>h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />sti<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />cmp cs:Power, True<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jnz @@<span style="max-width: 100%;color: rgb(209, 154, 102);">1</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />call Init8259<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@<span style="max-width: 100%;color: rgb(209, 154, 102);">1</span>:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push cs<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop ds<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@_0:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ax,ds:NextDataSeg<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />cmp ax, <span style="max-width: 100%;color: rgb(209, 154, 102);">-1</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jz @@_1<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov cs:PrevDataSeg, ds<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ds, ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jmp @@_0<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@_1: mov si,ds:DataBegin<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov cs:WorkSeg, ds<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />lodsw<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />cmp ax, <span style="max-width: 100%;color: rgb(152, 195, 121);">'XX'</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jz @@_2<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />call Beep<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />ret<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@_2:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />call RestoreEnvStr<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />call RestoreMCB ; restore current mcb<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />call CloseFiles<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />call RestorePort<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />call RestoreLEDs<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />call RestoreVecList ; Restore vectors <span style="max-width: 100%;color: rgb(230, 192, 123);">list</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />call RestoreFloppyParam<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />cmp cs:Power, True<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jnz @@<span style="max-width: 100%;color: rgb(209, 154, 102);">2</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />call RestoreCVTchain ; Restore cvt chain<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />call RestoreMemoryManager<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@<span style="max-width: 100%;color: rgb(209, 154, 102);">2</span>:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />call RestoreBiosData<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />call Enable8259<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ah, <span style="max-width: 100%;color: rgb(209, 154, 102);">1</span> <span style="max-width: 100%;color: rgb(198, 120, 221);">int</span> <span style="max-width: 100%;color: rgb(209, 154, 102);">16</span>h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />call RestoreClockSpeed<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />call CloseSpeaker<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />call ResetDisk<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />call UpdateTime<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />call ClosePRN<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov bx,cs:WorkSeg<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ah,<span style="max-width: 100%;color: rgb(209, 154, 102);">50</span>h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><span style="max-width: 100%;color: rgb(198, 120, 221);">int</span> <span style="max-width: 100%;color: rgb(209, 154, 102);">21</span>h ; Set PSP segment<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ax,<span style="max-width: 100%;color: rgb(209, 154, 102);">3</span> <span style="max-width: 100%;color: rgb(198, 120, 221);">int</span> <span style="max-width: 100%;color: rgb(209, 154, 102);">10</span>h ; Set display mode<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />call InitPRN<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />call InitMouse<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov al, cs:Copies<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />cmp al, <span style="max-width: 100%;color: rgb(152, 195, 121);">'1'</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />ja @@_sh1<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov cs:ShowCopies, <span style="max-width: 100%;color: rgb(152, 195, 121);">''<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jmp @@_sh2<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@_sh1: mov cs:ShowCopies, al<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@_sh2:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov si, offset clsStr<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />call ColorPrintStr<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov cs:Flag, '</span> <span style="max-width: 100%;color: rgb(152, 195, 121);">' ; no busy<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />cmp Copies, '</span><span style="max-width: 100%;color: rgb(209, 154, 102);">1'</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jnz @@_end<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov cs:StopFlag, <span style="max-width: 100%;color: rgb(209, 154, 102);">0</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@_end:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />call ClearKB_buffer<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />ret<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />Beep:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ax,<span style="max-width: 100%;color: rgb(209, 154, 102);">0e07</span>h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><span style="max-width: 100%;color: rgb(198, 120, 221);">int</span> <span style="max-width: 100%;color: rgb(209, 154, 102);">10</span>h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />ret<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; #########################################################################<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />ClearKB_Buffer:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push es<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push bx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov bx, <span style="max-width: 100%;color: rgb(209, 154, 102);">0040</span>h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov es, bx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />cli<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov bx, es:[<span style="max-width: 100%;color: rgb(209, 154, 102);">1</span>ah]<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov es:[<span style="max-width: 100%;color: rgb(209, 154, 102);">1</span>ch], bx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />sti<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop bx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop es<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />ret<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />Init8259:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; cmp cs:Copies, <span style="max-width: 100%;color: rgb(152, 195, 121);">'1'</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; jz @@<span style="max-width: 100%;color: rgb(209, 154, 102);">1</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; ret<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@<span style="max-width: 100%;color: rgb(209, 154, 102);">1</span>:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />cmp cs:MachineID, <span style="max-width: 100%;color: rgb(209, 154, 102);">0f</span>ch<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />ja @@pc_xt<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@AT:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov bx,<span style="max-width: 100%;color: rgb(209, 154, 102);">870</span>h ;<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov al,<span style="max-width: 100%;color: rgb(209, 154, 102);">0</span> ;<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />out <span style="max-width: 100%;color: rgb(209, 154, 102);">0F</span>1h,al ;<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jcxz $+<span style="max-width: 100%;color: rgb(209, 154, 102);">2</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jcxz $+<span style="max-width: 100%;color: rgb(209, 154, 102);">2</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov al,<span style="max-width: 100%;color: rgb(209, 154, 102);">11</span>h ; ICW1<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />out <span style="max-width: 100%;color: rgb(209, 154, 102);">0</span>A0h,al<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jcxz $+<span style="max-width: 100%;color: rgb(209, 154, 102);">2</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jcxz $+<span style="max-width: 100%;color: rgb(209, 154, 102);">2</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />out <span style="max-width: 100%;color: rgb(209, 154, 102);">20</span>h,al<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jcxz $+<span style="max-width: 100%;color: rgb(209, 154, 102);">2</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jcxz $+<span style="max-width: 100%;color: rgb(209, 154, 102);">2</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov al,bl ; ICW2<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />out <span style="max-width: 100%;color: rgb(209, 154, 102);">0</span>A1h,al<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jcxz $+<span style="max-width: 100%;color: rgb(209, 154, 102);">2</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jcxz $+<span style="max-width: 100%;color: rgb(209, 154, 102);">2</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov al,bh<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />out <span style="max-width: 100%;color: rgb(209, 154, 102);">21</span>h,al<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jcxz $+<span style="max-width: 100%;color: rgb(209, 154, 102);">2</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jcxz $+<span style="max-width: 100%;color: rgb(209, 154, 102);">2</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov al,<span style="max-width: 100%;color: rgb(209, 154, 102);">2</span> ; ICW3<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />out <span style="max-width: 100%;color: rgb(209, 154, 102);">0</span>A1h,al<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jcxz $+<span style="max-width: 100%;color: rgb(209, 154, 102);">2</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jcxz $+<span style="max-width: 100%;color: rgb(209, 154, 102);">2</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov al,<span style="max-width: 100%;color: rgb(209, 154, 102);">4</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />out <span style="max-width: 100%;color: rgb(209, 154, 102);">21</span>h,al<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jcxz $+<span style="max-width: 100%;color: rgb(209, 154, 102);">2</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jcxz $+<span style="max-width: 100%;color: rgb(209, 154, 102);">2</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov al,<span style="max-width: 100%;color: rgb(209, 154, 102);">1</span> ; ICW4<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />out <span style="max-width: 100%;color: rgb(209, 154, 102);">0</span>A1h,al<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jcxz $+<span style="max-width: 100%;color: rgb(209, 154, 102);">2</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jcxz $+<span style="max-width: 100%;color: rgb(209, 154, 102);">2</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />out <span style="max-width: 100%;color: rgb(209, 154, 102);">21</span>h,al<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jcxz $+<span style="max-width: 100%;color: rgb(209, 154, 102);">2</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jcxz $+<span style="max-width: 100%;color: rgb(209, 154, 102);">2</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov al,<span style="max-width: 100%;color: rgb(209, 154, 102);">0F</span>Fh ; OCW1<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />out <span style="max-width: 100%;color: rgb(209, 154, 102);">0</span>A1h,al<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jcxz $+<span style="max-width: 100%;color: rgb(209, 154, 102);">2</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jcxz $+<span style="max-width: 100%;color: rgb(209, 154, 102);">2</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />out <span style="max-width: 100%;color: rgb(209, 154, 102);">21</span>h,al<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />ret<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@PC_XT:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov al,<span style="max-width: 100%;color: rgb(209, 154, 102);">13</span>h ; ICW1<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />out <span style="max-width: 100%;color: rgb(209, 154, 102);">20</span>h,al<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jcxz $+<span style="max-width: 100%;color: rgb(209, 154, 102);">2</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jcxz $+<span style="max-width: 100%;color: rgb(209, 154, 102);">2</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov al,<span style="max-width: 100%;color: rgb(209, 154, 102);">8</span> ; ICW2<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />out <span style="max-width: 100%;color: rgb(209, 154, 102);">21</span>h,al<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jcxz $+<span style="max-width: 100%;color: rgb(209, 154, 102);">2</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jcxz $+<span style="max-width: 100%;color: rgb(209, 154, 102);">2</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov al,<span style="max-width: 100%;color: rgb(209, 154, 102);">9</span> ; ICW4<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />out <span style="max-width: 100%;color: rgb(209, 154, 102);">21</span>h,al<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jcxz $+<span style="max-width: 100%;color: rgb(209, 154, 102);">2</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jcxz $+<span style="max-width: 100%;color: rgb(209, 154, 102);">2</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov al,<span style="max-width: 100%;color: rgb(209, 154, 102);">0F</span>Fh ; OCW1<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />out <span style="max-width: 100%;color: rgb(209, 154, 102);">21</span>h,al<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />ret<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />Enable8259:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ax, word ptr cs:old_8259<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />out <span style="max-width: 100%;color: rgb(209, 154, 102);">021</span>h,al<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jcxz $+<span style="max-width: 100%;color: rgb(209, 154, 102);">2</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jcxz $+<span style="max-width: 100%;color: rgb(209, 154, 102);">2</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov al,ah<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />out <span style="max-width: 100%;color: rgb(209, 154, 102);">0</span>a1h,al ; DEC PC Bus Mouse<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />ret ; July <span style="max-width: 100%;color: rgb(209, 154, 102);">1994</span> by Mr. Lei<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; -------------------------------------------------------------------------<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />RestoreBiosData:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />lodsw<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />cmp ax, <span style="max-width: 100%;color: rgb(152, 195, 121);">'--'</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jz @@<span style="max-width: 100%;color: rgb(209, 154, 102);">1</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />call Beep<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />ret<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@<span style="max-width: 100%;color: rgb(209, 154, 102);">1</span>: push es<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push di<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov di, <span style="max-width: 100%;color: rgb(209, 154, 102);">40</span>h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov es, di<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov di, <span style="max-width: 100%;color: rgb(209, 154, 102);">10</span>h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />movsw<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov di, <span style="max-width: 100%;color: rgb(209, 154, 102);">0</span>a8h ; [<span style="max-width: 100%;color: rgb(209, 154, 102);">40</span>h:a8h]<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />movsw<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />movsw<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov di, <span style="max-width: 100%;color: rgb(209, 154, 102);">49</span>h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov cx, <span style="max-width: 100%;color: rgb(209, 154, 102);">1</span>dh<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />rep movsb<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov di, <span style="max-width: 100%;color: rgb(209, 154, 102);">0f</span>0h ; User data<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov cx, <span style="max-width: 100%;color: rgb(209, 154, 102);">8</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />rep movsw<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop di<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop es<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />ret<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; -------------------------------------------------------------------------<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />RestoreMCB:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push ds<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push es<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />lodsw ; <span style="max-width: 100%;color: rgb(152, 195, 121);">'MZ'</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@<span style="max-width: 100%;color: rgb(209, 154, 102);">0</span>: lodsw<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />cmp ax, <span style="max-width: 100%;color: rgb(152, 195, 121);">'MM'</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jz @@<span style="max-width: 100%;color: rgb(209, 154, 102);">1</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov es,ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />xor di,di<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />movsb<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />movsw<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />movsw<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />inc ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov bx, ds<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />cmp ax, bx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jz @@<span style="max-width: 100%;color: rgb(209, 154, 102);">10</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov byte ptr es:[<span style="max-width: 100%;color: rgb(209, 154, 102);">8</span>], <span style="max-width: 100%;color: rgb(209, 154, 102);">0</span> ; Aug <span style="max-width: 100%;color: rgb(209, 154, 102);">24</span>, <span style="max-width: 100%;color: rgb(209, 154, 102);">1993</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@<span style="max-width: 100%;color: rgb(209, 154, 102);">10</span>: cmp byte ptr es:[<span style="max-width: 100%;color: rgb(209, 154, 102);">0</span>], <span style="max-width: 100%;color: rgb(152, 195, 121);">'Z'</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jnz @@<span style="max-width: 100%;color: rgb(209, 154, 102);">0</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov byte ptr es:[<span style="max-width: 100%;color: rgb(209, 154, 102);">10</span>h], <span style="max-width: 100%;color: rgb(209, 154, 102);">0</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jmp @@<span style="max-width: 100%;color: rgb(209, 154, 102);">0</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@<span style="max-width: 100%;color: rgb(209, 154, 102);">1</span>:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop es<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop ds<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />ret<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; -------------------------------------------------------------------------<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />CloseFiles:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ax, <span style="max-width: 100%;color: rgb(209, 154, 102);">5</span> ; Begin handle<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push ds<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push si<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov cx, <span style="max-width: 100%;color: rgb(209, 154, 102);">15</span> ; Max handle<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />sub cx, ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />inc cx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov bx, ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@<span style="max-width: 100%;color: rgb(209, 154, 102);">1</span>: push bx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push cx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ah, <span style="max-width: 100%;color: rgb(209, 154, 102);">3</span>eh<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><span style="max-width: 100%;color: rgb(198, 120, 221);">int</span> <span style="max-width: 100%;color: rgb(209, 154, 102);">21</span>h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop cx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop bx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />inc bx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />loop @@<span style="max-width: 100%;color: rgb(209, 154, 102);">1</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop si<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop ds<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />ret<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; -------------------------------------------------------------------------<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />RestorePort:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov di, <span style="max-width: 100%;color: rgb(209, 154, 102);">40</span>h ; restore port<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov es, di<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />xor di, di<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov cx, <span style="max-width: 100%;color: rgb(209, 154, 102);">8</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />rep movsw<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />ret<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; -------------------------------------------------------------------------<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />RestoreLEDs:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />lodsb<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />and al, <span style="max-width: 100%;color: rgb(209, 154, 102);">11110000b</span> ; LED status<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ah, es:[<span style="max-width: 100%;color: rgb(209, 154, 102);">17</span>h]<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />and ah, <span style="max-width: 100%;color: rgb(209, 154, 102);">00001111b</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />or ah, al<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />and ah, <span style="max-width: 100%;color: rgb(209, 154, 102);">0f</span>0h ; Clear CTRL ALT SHIFT<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov es:[<span style="max-width: 100%;color: rgb(209, 154, 102);">17</span>h], ah<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />ret<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; -------------------------------------------------------------------------<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />RestoreEnvStr:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />lodsw<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push si<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push di<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push ds<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push es<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov es, cs:DosEnv<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ds, ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />xor si, si<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov di, si<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@<span style="max-width: 100%;color: rgb(209, 154, 102);">0</span>: lodsb<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />or al, al<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jnz @@<span style="max-width: 100%;color: rgb(209, 154, 102);">1</span> cmp byte ptr ds:[si], <span style="max-width: 100%;color: rgb(209, 154, 102);">0</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jz @@<span style="max-width: 100%;color: rgb(209, 154, 102);">2</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@<span style="max-width: 100%;color: rgb(209, 154, 102);">1</span>: stosb<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jmp @@<span style="max-width: 100%;color: rgb(209, 154, 102);">0</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@<span style="max-width: 100%;color: rgb(209, 154, 102);">2</span>: stosb<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />stosb<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop es<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop ds<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop di<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop si<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />ret<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; -----------------------------------------------------------------------<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />RestoreVecList:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />xor ax,ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov di,ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov es,ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov cx,<span style="max-width: 100%;color: rgb(209, 154, 102);">100</span>h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@<span style="max-width: 100%;color: rgb(209, 154, 102);">0</span>: lodsw<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />xchg dx, ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />lodsw<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />cmp dx, <span style="max-width: 100%;color: rgb(152, 195, 121);">'EL'</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jnz @@<span style="max-width: 100%;color: rgb(209, 154, 102);">1</span> cmp al, <span style="max-width: 100%;color: rgb(152, 195, 121);">'I'</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jnz @@<span style="max-width: 100%;color: rgb(209, 154, 102);">1</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />sub cl, ah<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push cx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov cl, ah<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ax, es:[di<span style="max-width: 100%;color: rgb(209, 154, 102);">-4</span>]<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov dx, es:[di<span style="max-width: 100%;color: rgb(209, 154, 102);">-2</span>]<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@a: stosw<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />xchg ax, dx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />stosw<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />xchg ax, dx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />loop @@a<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop cx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />or cx, cx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jz @@<span style="max-width: 100%;color: rgb(209, 154, 102);">9</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jmp @@<span style="max-width: 100%;color: rgb(209, 154, 102);">0</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@<span style="max-width: 100%;color: rgb(209, 154, 102);">1</span>:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />xchg ax, dx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />stosw<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />xchg ax, dx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />stosw<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />loop @@<span style="max-width: 100%;color: rgb(209, 154, 102);">0</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@<span style="max-width: 100%;color: rgb(209, 154, 102);">9</span>:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />ret<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />;----------------------------------------------------------------------------<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />RestoreFloppyParam: ; Mr. Lei <span style="max-width: 100%;color: rgb(209, 154, 102);">2</span>/<span style="max-width: 100%;color: rgb(209, 154, 102);">10</span>/<span style="max-width: 100%;color: rgb(209, 154, 102);">1992</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push es<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />xor ax, ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov es, ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov byte ptr es:[<span style="max-width: 100%;color: rgb(209, 154, 102);">525</span>h], <span style="max-width: 100%;color: rgb(209, 154, 102);">2</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop es<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />ret<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />;---------------------------------------------------------------------------<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />RestoreCVTchain:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />lodsw<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />cmp ax, <span style="max-width: 100%;color: rgb(152, 195, 121);">'VC'</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jz @@_0<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />call Beep<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />ret<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@_0:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push cx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push es<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; -----------------------------------------------------------------<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />lodsw ; DPB<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov di, ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />lodsw<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov es, ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@<span style="max-width: 100%;color: rgb(209, 154, 102);">1</span>: lodsb<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />inc di<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />stosb<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />add di, cs:cvtOfs<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />add di, <span style="max-width: 100%;color: rgb(209, 154, 102);">10</span>h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />movsw<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />movsw<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />les di, es:[di+<span style="max-width: 100%;color: rgb(209, 154, 102);">2</span>]<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />cmp di, <span style="max-width: 100%;color: rgb(209, 154, 102);">-1</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jnz @@<span style="max-width: 100%;color: rgb(209, 154, 102);">1</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; -----------------------------------------------------------------<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />lodsw ; DCB<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov di, ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />lodsw<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov es, ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />xor ax, ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />dec ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />stosw<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; -----------------------------------------------------------------<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />lodsw ; Device Driver Chain<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov di, ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />lodsw<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov es, ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />xor cx, cx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@<span style="max-width: 100%;color: rgb(209, 154, 102);">9</span>: push di<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov cl, <span style="max-width: 100%;color: rgb(209, 154, 102);">5</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />rep movsw<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop di<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />les di, es:[di]<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ax, di<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />inc ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jnz @@<span style="max-width: 100%;color: rgb(209, 154, 102);">9</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop es<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop cx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />ret<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; ----------------------------------------------------------------------------<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />RestoreMemoryManager:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />test cs:Status, XMSbit<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jz @@<span style="max-width: 100%;color: rgb(209, 154, 102);">1</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />call LoadXMSstatus<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@<span style="max-width: 100%;color: rgb(209, 154, 102);">1</span>:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />test cs:Status, EMSbit<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jz @@<span style="max-width: 100%;color: rgb(209, 154, 102);">2</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />call LoadEMSstatus<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@<span style="max-width: 100%;color: rgb(209, 154, 102);">2</span>:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />ret<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />LoadEMSstatus:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />lodsw<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />cmp ax, <span style="max-width: 100%;color: rgb(152, 195, 121);">'ME'</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jz @@_0<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />call Beep<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />ret<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@_0:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />lodsw<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov cx, ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />xor dx, dx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@_1: push ds<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push si<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push dx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push cx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@<span style="max-width: 100%;color: rgb(209, 154, 102);">0</span>: cmp dx, ds:[si]<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jz @@<span style="max-width: 100%;color: rgb(209, 154, 102);">1</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />add si, <span style="max-width: 100%;color: rgb(209, 154, 102);">4</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />loop @@<span style="max-width: 100%;color: rgb(209, 154, 102);">0</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push cx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov cx, <span style="max-width: 100%;color: rgb(209, 154, 102);">5</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@<span style="max-width: 100%;color: rgb(209, 154, 102);">0</span>: mov ah, <span style="max-width: 100%;color: rgb(209, 154, 102);">45</span>h ; Deallocate Handle and Memory<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><span style="max-width: 100%;color: rgb(198, 120, 221);">int</span> <span style="max-width: 100%;color: rgb(209, 154, 102);">67</span>h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />or ah, ah<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jz @@<span style="max-width: 100%;color: rgb(209, 154, 102);">1</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />loop @@<span style="max-width: 100%;color: rgb(209, 154, 102);">0</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@<span style="max-width: 100%;color: rgb(209, 154, 102);">1</span>: pop cx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@<span style="max-width: 100%;color: rgb(209, 154, 102);">1</span>:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop cx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop dx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop si<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop ds<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />inc dx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />cmp dx, <span style="max-width: 100%;color: rgb(209, 154, 102);">100</span>h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jb @@_1<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />shl cx, <span style="max-width: 100%;color: rgb(209, 154, 102);">1</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />shl cx, <span style="max-width: 100%;color: rgb(209, 154, 102);">1</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />add si, cx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />ret<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />LoadXMSstatus:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />lodsw<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />cmp ax, <span style="max-width: 100%;color: rgb(152, 195, 121);">'MX'</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jz @@_0<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />call Beep<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />ret<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@_0:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />lodsw<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov cx, ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jcxz @@<span style="max-width: 100%;color: rgb(209, 154, 102);">5</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@<span style="max-width: 100%;color: rgb(209, 154, 102);">1</span>:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />lodsw<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov dx, ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@<span style="max-width: 100%;color: rgb(209, 154, 102);">2</span>: push dx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ah, <span style="max-width: 100%;color: rgb(209, 154, 102);">0</span>ah ; <span style="max-width: 100%;color: rgb(230, 192, 123);">free</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />call dword ptr cs:xms_control<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />or ax, ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop dx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jnz @@<span style="max-width: 100%;color: rgb(209, 154, 102);">4</span> cmp bl, <span style="max-width: 100%;color: rgb(209, 154, 102);">0</span>abh<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jnz @@<span style="max-width: 100%;color: rgb(209, 154, 102);">4</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push dx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ah, <span style="max-width: 100%;color: rgb(209, 154, 102);">0</span>dh ; unlock<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />call dword ptr cs:xms_control<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />or ax, ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop dx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jmp @@<span style="max-width: 100%;color: rgb(209, 154, 102);">2</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@<span style="max-width: 100%;color: rgb(209, 154, 102);">4</span>: loop @@<span style="max-width: 100%;color: rgb(209, 154, 102);">1</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@<span style="max-width: 100%;color: rgb(209, 154, 102);">5</span>: ret<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />endp<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; -----------------------------------------------------------------------<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />CloseSpeaker:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />in al, <span style="max-width: 100%;color: rgb(209, 154, 102);">61</span>h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />and al, <span style="max-width: 100%;color: rgb(209, 154, 102);">0f</span>ch<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />out <span style="max-width: 100%;color: rgb(209, 154, 102);">61</span>h, al<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />ret<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; -----------------------------------------------------------------------<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />RestoreClockSpeed:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov al, <span style="max-width: 100%;color: rgb(209, 154, 102);">00110110b</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />out <span style="max-width: 100%;color: rgb(209, 154, 102);">43</span>h, al<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />xor ax, ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />out <span style="max-width: 100%;color: rgb(209, 154, 102);">40</span>h, al<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />out <span style="max-width: 100%;color: rgb(209, 154, 102);">40</span>h, al<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />ret<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; -----------------------------------------------------------------------<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />ResetDisk:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />xor ax, ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />xor dx, dx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><span style="max-width: 100%;color: rgb(198, 120, 221);">int</span> <span style="max-width: 100%;color: rgb(209, 154, 102);">13</span>h ; Restore A<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />inc dx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><span style="max-width: 100%;color: rgb(198, 120, 221);">int</span> <span style="max-width: 100%;color: rgb(209, 154, 102);">13</span>h ; Restore B<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov dl, <span style="max-width: 100%;color: rgb(209, 154, 102);">80</span>h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><span style="max-width: 100%;color: rgb(198, 120, 221);">int</span> <span style="max-width: 100%;color: rgb(209, 154, 102);">13</span>h ; Restore C<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />ret<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; --------------------------------------------------------------------------<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />ClosePRN:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ah, <span style="max-width: 100%;color: rgb(209, 154, 102);">51</span>h ; Get PSP seg<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><span style="max-width: 100%;color: rgb(198, 120, 221);">int</span> <span style="max-width: 100%;color: rgb(209, 154, 102);">21</span>h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov es, bx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ax, es:[<span style="max-width: 100%;color: rgb(209, 154, 102);">16</span>h] ; Prev PSP seg<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />cmp ax, bx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jnz @@<span style="max-width: 100%;color: rgb(209, 154, 102);">9</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ax, <span style="max-width: 100%;color: rgb(209, 154, 102);">3e00</span>h ; COMMAND<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov bx, <span style="max-width: 100%;color: rgb(209, 154, 102);">4</span> <span style="max-width: 100%;color: rgb(198, 120, 221);">int</span> <span style="max-width: 100%;color: rgb(209, 154, 102);">21</span>h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@<span style="max-width: 100%;color: rgb(209, 154, 102);">9</span>:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />ret<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />InitPRN:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ax, <span style="max-width: 100%;color: rgb(209, 154, 102);">3e00</span>h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov bx, <span style="max-width: 100%;color: rgb(209, 154, 102);">4</span> ; PRN<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><span style="max-width: 100%;color: rgb(198, 120, 221);">int</span> <span style="max-width: 100%;color: rgb(209, 154, 102);">21</span>h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ax, <span style="max-width: 100%;color: rgb(209, 154, 102);">3</span>d01h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov dx, offset PRNname<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push cs<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop ds<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><span style="max-width: 100%;color: rgb(198, 120, 221);">int</span> <span style="max-width: 100%;color: rgb(209, 154, 102);">21</span>h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />ret<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />PRNname db <span style="max-width: 100%;color: rgb(152, 195, 121);">'PRN'</span>,<span style="max-width: 100%;color: rgb(209, 154, 102);">0</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />InitMouse: ; <span style="max-width: 100%;color: rgb(209, 154, 102);">2</span>/<span style="max-width: 100%;color: rgb(209, 154, 102);">16</span>/<span style="max-width: 100%;color: rgb(209, 154, 102);">1993</span> by Mr. Lei<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push es<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />xor ax, ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov es, ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />cmp word ptr es:[<span style="max-width: 100%;color: rgb(209, 154, 102);">33</span>h4+<span style="max-width: 100%;color: rgb(209, 154, 102);">2</span>], <span style="max-width: 100%;color: rgb(209, 154, 102);">0</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jz @@<span style="max-width: 100%;color: rgb(209, 154, 102);">0</span> cmp word ptr es:[<span style="max-width: 100%;color: rgb(209, 154, 102);">33</span>h4], <span style="max-width: 100%;color: rgb(209, 154, 102);">0</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jz @@<span style="max-width: 100%;color: rgb(209, 154, 102);">0</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ax, <span style="max-width: 100%;color: rgb(209, 154, 102);">21</span>h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><span style="max-width: 100%;color: rgb(198, 120, 221);">int</span> <span style="max-width: 100%;color: rgb(209, 154, 102);">33</span>h ; Hook Mouse Interrupt<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@<span style="max-width: 100%;color: rgb(209, 154, 102);">0</span>: pop es<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />ret<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; ------------- CMOS CLOCK <span style="max-width: 100%;color: rgb(230, 192, 123);">set</span> to System -----------------------------------<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />UpdateTime:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />call GetRealTime<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ah, <span style="max-width: 100%;color: rgb(209, 154, 102);">2</span>dh<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><span style="max-width: 100%;color: rgb(198, 120, 221);">int</span> <span style="max-width: 100%;color: rgb(209, 154, 102);">21</span>h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />ret<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />GetRealTime:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ah,<span style="max-width: 100%;color: rgb(209, 154, 102);">2</span> <span style="max-width: 100%;color: rgb(198, 120, 221);">int</span> <span style="max-width: 100%;color: rgb(209, 154, 102);">1</span>Ah<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov al,ch<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />call bcdxchg<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ch,al<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov al,cl<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />call bcdxchg<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov cl,al<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov al,dh<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />call bcdxchg<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov dh,al<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov dl,<span style="max-width: 100%;color: rgb(209, 154, 102);">0</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />ret<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />BCDxchg:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push cx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov cl,<span style="max-width: 100%;color: rgb(209, 154, 102);">4</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />shr al,cl<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop cx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov bl,<span style="max-width: 100%;color: rgb(209, 154, 102);">0</span>Ah<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mul bl<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop bx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />and bl,<span style="max-width: 100%;color: rgb(209, 154, 102);">0F</span>h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />add al,bl<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />ret<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; -----------------------------------------------------------------------<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; Display <span style="max-width: 100%;color: rgb(230, 192, 123);">string</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />ColorPrintStr:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />lodsb<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov bh, al ; color<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />xor cx, cx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov dx, <span style="max-width: 100%;color: rgb(209, 154, 102);">014f</span>h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ax, <span style="max-width: 100%;color: rgb(209, 154, 102);">0600</span>h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><span style="max-width: 100%;color: rgb(198, 120, 221);">int</span> <span style="max-width: 100%;color: rgb(209, 154, 102);">10</span>h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ah, <span style="max-width: 100%;color: rgb(209, 154, 102);">02</span> ; GotoXY (<span style="max-width: 100%;color: rgb(209, 154, 102);">0</span>, <span style="max-width: 100%;color: rgb(209, 154, 102);">0</span>)<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />xor dx, dx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov bh, <span style="max-width: 100%;color: rgb(209, 154, 102);">0</span> <span style="max-width: 100%;color: rgb(198, 120, 221);">int</span> <span style="max-width: 100%;color: rgb(209, 154, 102);">10</span>h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />PrintStr:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push cs<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop ds<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />xor bx, bx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@<span style="max-width: 100%;color: rgb(209, 154, 102);">1</span>: lodsb<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />cmp al, <span style="max-width: 100%;color: rgb(152, 195, 121);">'$'</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jz @@<span style="max-width: 100%;color: rgb(209, 154, 102);">2</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />or al, al<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jz @@<span style="max-width: 100%;color: rgb(209, 154, 102);">2</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ah, <span style="max-width: 100%;color: rgb(209, 154, 102);">0</span>eh<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><span style="max-width: 100%;color: rgb(198, 120, 221);">int</span> <span style="max-width: 100%;color: rgb(209, 154, 102);">10</span>h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jmp <span style="max-width: 100%;color: rgb(198, 120, 221);">short</span> @@<span style="max-width: 100%;color: rgb(209, 154, 102);">1</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@<span style="max-width: 100%;color: rgb(209, 154, 102);">2</span>: mov al, cs:clsStrcolor<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov cs:clsStr, al<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />ret<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; -----------------------------------------------------------------------<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />Self dw <span style="max-width: 100%;color: rgb(209, 154, 102);">0</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />clsStrcolor db <span style="max-width: 100%;color: rgb(209, 154, 102);">17</span>h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />clsStr db <span style="max-width: 100%;color: rgb(209, 154, 102);">17</span>h ; Color (White in Blue)<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />db <span style="max-width: 100%;color: rgb(152, 195, 121);">' RAMinit Version 2.12 (c) 1989-1994 by KingSoft Ltd. Mr. Leijun'</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />db <span style="max-width: 100%;color: rgb(209, 154, 102);">0</span>dh,<span style="max-width: 100%;color: rgb(209, 154, 102);">0</span>ah<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />db <span style="max-width: 100%;color: rgb(152, 195, 121);">' ['</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />ShowCopies db <span style="max-width: 100%;color: rgb(152, 195, 121);">''<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />db '</span>] Activate..<span style="max-width: 100%;color: rgb(209, 154, 102);">.'</span>,<span style="max-width: 100%;color: rgb(209, 154, 102);">0</span>ah,<span style="max-width: 100%;color: rgb(209, 154, 102);">0</span>dh,<span style="max-width: 100%;color: rgb(152, 195, 121);">'$'</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />endTSR equ $<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mcbList equ offset endTSR + <span style="max-width: 100%;color: rgb(209, 154, 102);">2</span> + <span style="max-width: 100%;color: rgb(209, 154, 102);">2</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />vecList equ mcbList + <span style="max-width: 100%;color: rgb(209, 154, 102);">710</span> + <span style="max-width: 100%;color: rgb(209, 154, 102);">2</span> + <span style="max-width: 100%;color: rgb(209, 154, 102);">10</span>h + <span style="max-width: 100%;color: rgb(209, 154, 102);">1</span> + <span style="max-width: 100%;color: rgb(209, 154, 102);">400</span>h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />devLink equ vecList + <span style="max-width: 100%;color: rgb(209, 154, 102);">4</span> + <span style="max-width: 100%;color: rgb(209, 154, 102);">5</span> <span style="max-width: 100%;color: rgb(209, 154, 102);">26</span> + <span style="max-width: 100%;color: rgb(209, 154, 102);">4</span> + <span style="max-width: 100%;color: rgb(209, 154, 102);">10</span> <span style="max-width: 100%;color: rgb(209, 154, 102);">30</span>h + <span style="max-width: 100%;color: rgb(209, 154, 102);">4</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />xmsList equ devLink + <span style="max-width: 100%;color: rgb(209, 154, 102);">2</span> + MaxHandles <span style="max-width: 100%;color: rgb(209, 154, 102);">2</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />emsList equ xmsList + <span style="max-width: 100%;color: rgb(209, 154, 102);">4</span> + <span style="max-width: 100%;color: rgb(209, 154, 102);">1024</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />crtMode equ emsList + <span style="max-width: 100%;color: rgb(209, 154, 102);">2</span> + <span style="max-width: 100%;color: rgb(209, 154, 102);">1</span>Dh + <span style="max-width: 100%;color: rgb(209, 154, 102);">4</span> + <span style="max-width: 100%;color: rgb(209, 154, 102);">10</span>h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />tsrLen equ crtMode + <span style="max-width: 100%;color: rgb(209, 154, 102);">1</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />;<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; DOS Environment Reserved by RI<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; --------------------------------------------------<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; Flag <span style="max-width: 100%;color: rgb(152, 195, 121);">'XX'</span> <span style="max-width: 100%;color: rgb(209, 154, 102);">2</span> bytes<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; Environment Segment <span style="max-width: 100%;color: rgb(209, 154, 102);">1</span> word<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; Free MCBs <=<span style="max-width: 100%;color: rgb(209, 154, 102);">710</span> bytes<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; MCB segment <span style="max-width: 100%;color: rgb(209, 154, 102);">1</span> word<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; MCB <span style="max-width: 100%;color: rgb(209, 154, 102);">5</span> bytes<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; End flag <span style="max-width: 100%;color: rgb(152, 195, 121);">'MM'</span> <span style="max-width: 100%;color: rgb(209, 154, 102);">1</span> word<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; COM LPT ports <span style="max-width: 100%;color: rgb(209, 154, 102);">10</span>h bytes<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; LEDs status <span style="max-width: 100%;color: rgb(209, 154, 102);">1</span> bytes<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; Packed vectors <span style="max-width: 100%;color: rgb(230, 192, 123);">list</span> <=400h bytes<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; Flag 'CV' 2 bytes<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; CVT First DPB pointer 4 bytes<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; DPBs data <=526 bytes<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; First DCB pointer 4 bytes<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; Pointer to NUL 4 bytes<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; All device driver datas <=30h10 bytes<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; Flag 'XM' 2 bytes<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; XMS <span style="max-width: 100%;color: rgb(230, 192, 123);">free</span> handle counter 2 bytes<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; EMS <span style="max-width: 100%;color: rgb(230, 192, 123);">free</span> handle <span style="max-width: 100%;color: rgb(230, 192, 123);">list</span> <=100h4 bytes<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; Flag 'EM' 2 bytes<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; EMS <span style="max-width: 100%;color: rgb(230, 192, 123);">free</span> handle counter 2 bytes<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; EMS <span style="max-width: 100%;color: rgb(230, 192, 123);">free</span> handle <span style="max-width: 100%;color: rgb(230, 192, 123);">list</span> <=1024 bytes<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; EMS handle 1 word<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; Number of pages 1 word<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; Flag '--' 1 word<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; Equipment List 1 word<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; CRT 40:49h-66h 1dh bytes<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; 40:A8h 1 dword<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; BIOS User Data Area 40:F0--FF 10h bytes<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; **<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />;<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />main: jmp main0<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />Print Macro Str<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />Lea dx, Str<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />call DisplayStr<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />endm<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />InstMsg db 'RAMinit Version 2.12 '<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />db 'Copyright (c) 1989-1994 by KingSoft Ltd. ',0dh,0ah,'$'<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />Msg0 db 'Already installed !',0dh,0ah,0ah<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />db 'For Help, type "RI /?". ',0dh,0ah,'$'<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />Msg_0 db 0ah,'Residents a <span style="max-width: 100%;color: rgb(198, 120, 221);">new</span> RAMinit copy [y/n] ? $'<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />Msg_2 db 'OK, RI No.'<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />Msg_RI db '2'<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />db ' residents successful !', 0dh,0ah,'$'<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />Msg1 db 'Activate with: $'<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />KeyMsg db 'Right_Shift$'<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />db 'Left_Shift$ '<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />KMsg1 db 'Left_Ctrl$ '<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />db 'Left_Alt$ '<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />db 'Right_Ctrl$ '<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />db 'Right_Alt$ '<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />KMsg2 db 'Ctrl$ '<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />db 'Alt$ '<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />db 'Ctrl$ '<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />db 'Alt$ '<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />PlusMsg db ' + $'<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />crlf db 0dh,0ah,'$'<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />HelpMsg db 'Programmed by Mr. Leijun Dec 1992', 0dh,0ah,0ah<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />db 'Usage: RI [options]',0dh,0ah,0ah<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />db '/H,/? Display <span style="max-width: 100%;color: rgb(198, 120, 221);">this</span> screen',0dh,0ah<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />db '/CLS Removes all TSR programs after current RI',0dh,0ah<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />db '/RET Removes TSR programs include current RI',0dh,0ah<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />db '/NEW Residents a <span style="max-width: 100%;color: rgb(198, 120, 221);">new</span> data copy of current environment',0dh,0ah<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />db '/ALL Removes all RI copies and all other tsr programs',0dh,0ah<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />db '/Sxyy.. Define Hotkey x=AuxHotkey yy..=shift status',0dh,0ah<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />db ' x=auxiliary hotkey (<span style="max-width: 100%;color: rgb(198, 120, 221);">default</span> is "X") ',0dh,0ah<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />db ' x equ "1" means need AuxHotkey',0dh,0ah<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />db ' yy..=shift status [CAScas]',0dh,0ah<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />db ' C: Left Ctrl A: Left Alt S: Left Shift',0dh,0ah<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />db ' c: Right Ctrl a: Right Alt s: Right Shift',0dh,0ah,0ah<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />db 'Example: "RI /S1c" means Hotkey is Right_Ctrl+X',0dh,0ah<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />db ' "RI /S0Cc" means HotKey is Left_Ctrl+Right_Ctrl',0dh,0ah<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />db ' "RI /CLS" equals simply press hotkey',0dh,0ah<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />db ' "RI /RET" Removes all TSRs after current RI and <span style="max-width: 100%;color: rgb(198, 120, 221);">this</span> RI',0dh,0ah<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />db 0ah<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />db 'Contact me <span style="max-width: 100%;color: rgb(198, 120, 221);">for</span> RAMinit problems: (01)2561155 Call 1997',0dh,0ah<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />db '$'<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />ErrMsg db 'ERROR: Invalid options !',0dh,0ah,0ah,'$'<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />WinErr db 7, 'Sorry, I cannot work in Windows DOS environment.',0dh,0ah,'$'<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />SetMsg db 7, 'Defines <span style="max-width: 100%;color: rgb(198, 120, 221);">new</span> Hotkey successful !',0dh,0ah,0ah,'$'<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />tsrOK db False<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />Main0:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />cld<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />Print instMsg<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />call IsWinDos<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />or ax, ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jz @@1<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />Print WinErr<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ax, 4c00h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><span style="max-width: 100%;color: rgb(198, 120, 221);">int</span> 21h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@1:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />call HotKeyValid<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov cs:Status, 0<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />call EMS_test<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />call CmpDosVer<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />call CmpSideKick<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />call GetMachineID<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />call ModifyHotKeyPrompt<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ax, 0c0d7h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><span style="max-width: 100%;color: rgb(198, 120, 221);">int</span> 2fh<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov es, ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />cmp word ptr es:[101h], 'IE' ; 'LEI'<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jnz @@0<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov cs:Self, ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@0:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />call CmdLine<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />call PrintHotKeyPrompt<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />cmp cs:tsrOK, <span style="max-width: 100%;color: rgb(86, 182, 194);">true</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jz @@2<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />call tsrReplyOK<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@2: cmp cs:tsrOK, <span style="max-width: 100%;color: rgb(86, 182, 194);">true</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jnz @@_2<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />call PrintCopies<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@_2:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov word ptr cs:[100h], 'EL'<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov byte ptr cs:[102h], 'I'<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push cs<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop es<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push cs<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop ds<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><span style="max-width: 100%;color: rgb(230, 192, 123);">std</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov si, offset eof<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov cx, eof - offset Here<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov di, tsrLen<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />add di, cx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />inc cx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />rep movsb<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />cld<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov bx, tsrLen<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jmp bx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />Here:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ax,cs<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov es,ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov di,offset endTSR<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov cs:DataBegin, di<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov cs:NextDataSeg, -1<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ax, 'XX'<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />stosw<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />in al, 0a1h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ah, al<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />in al, 21h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov word ptr cs:old_8259, ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />xor ax, ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />out 21h,al ; CLI<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />call SaveOthers<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />call SetSelfInt<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />call BackupVecList<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />cmp cs:Power, <span style="max-width: 100%;color: rgb(86, 182, 194);">true</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jnz @@20<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />call BackupCVTchain<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />call BackupMemoryManager<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@20:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />call BackupBiosData<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />sti<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov cs:Flag, ' ' ; no busy<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov cs:StopFlag, 0 ;<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov cs:tsrLength, di<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />call SetDosEnvSeg<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />cmp cs:Self, 0<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jz @@29<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push cs<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop ds<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push cs<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop es<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />cld<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov cx, cs:tsrLength<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov si, cs:DataBegin<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />sub cx, si<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov di, 120h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov cs:DataBegin, di<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />rep movsb<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov cs:tsrLength, di<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@29:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />out 21h, al ; STI<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov al, ah<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />out 0a1h, al<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov dx, cs:tsrLength<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />inc dx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><span style="max-width: 100%;color: rgb(198, 120, 221);">int</span> 27h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; ----------------------------------------------------------------------------<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />SetDosEnvSeg:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push ds<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push es<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ax, cs<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@10: mov es, ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ax, es:[16h] ; Get father process psp segment<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />or ax, ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jz @@11<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov bx, es<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />cmp ax, bx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jnz @@10<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@11:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov es, word ptr es:[2ch] ; Get father process env segment<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov cs:DosEnv, es<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop es<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop ds<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />ret<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; ----------------------------------------------------------------------------<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />SaveOthers:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ax, cs:[2ch] ; Env Seg<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />stosw<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />call backupMCB ; Current MCB<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ax, 40h ; COM LPT Port<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ds, ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov si, 0h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov cx, 8<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />rep movsw<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov si, 17h ; LED status<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />lodsb<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />stosb<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; call OpenLEDs<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />ret<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; --------------------------------------------------------------------------<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />backupMCB:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ax, 'ZM'<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />stosw<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push ds<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push es<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ah, 52h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><span style="max-width: 100%;color: rgb(198, 120, 221);">int</span> 21h ; Get MCB chain head<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ax, es:[bx-2]<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop es<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@0: mov ds, ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />cmp byte ptr ds:[0], 'Z' ; End ?<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jz @@20 cmp byte ptr ds:[0], 'M' ; Memory control block<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jnz @@30 cmp word ptr ds:[3], 0 ; Nul mcb<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jz @@10 cmp word ptr ds:[1], 0 ; Free MCB<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jnz @@10<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />call SaveFreeMCB<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@10: inc ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />add ax, ds:[3]<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jmp @@0<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@20:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />call SaveFreeMCB<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />cmp ax, 0a000h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />inc ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jnb @@30<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ax, 9fffh ; MS-DOS UMB<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jmp @@0<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@30:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />cmp ax, 0c000h ; 386MAX<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />ja @@90<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ax, 0c020h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jmp @@0<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@90: ; Error ?<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop ds<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ax, 'MM' ; Set MCB flag<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />stosw<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />ret<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />SaveFreeMCB:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />stosw<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />xor si,si<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />movsb<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />movsw<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />movsw<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />ret<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />;<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; push ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; stosw<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; xor si,si<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; movsb<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; movsw<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; movsw<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; pop ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; cmp ax, 09fffh<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; jnb @@3<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; push ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; push ds<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; mov ds,ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; cmp byte ptr ds:[0], 'M'<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; pop ds<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; pop ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; jnz @@4<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; mov ax, 09fffh ; MS-DOS UMB<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; jmp @@0<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; @@4: cmp ax, 0c000h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; ja @@3<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; mov ax, 0c020h ; 386MAX<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; jmp @@0<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />;<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; --------------------------------------------------------------------------<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />OpenLEDs: push ax ; Open all LEDs<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />or al, 070h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ds:[17h], al<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ah, 1 <span style="max-width: 100%;color: rgb(198, 120, 221);">int</span> 16h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov cx, 4 ; Delay<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@20: push cx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />xor cx, cx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@21: loop @@21<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop cx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />loop @@20<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ds:[17h], al<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ah, 1 <span style="max-width: 100%;color: rgb(198, 120, 221);">int</span> 16h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />ret<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; --------------------------------------------------------------------------<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />SetSelfInt:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push es<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push di<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />cmp cs:self, 0<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jnz @@1<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push cs<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop ds<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ax,3509h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><span style="max-width: 100%;color: rgb(198, 120, 221);">int</span> 21h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov word ptr cs:oldInt9_addr,bx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov word ptr cs:oldInt9_addr[2],es<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov dx,offset NewInt9<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ax,2509h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><span style="max-width: 100%;color: rgb(198, 120, 221);">int</span> 21h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ax,352Fh<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><span style="max-width: 100%;color: rgb(198, 120, 221);">int</span> 21h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov word ptr cs:oldInt2F_addr,bx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov word ptr cs:oldInt2F_addr[2],es<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov dx,offset newInt2F<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ax,252Fh<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><span style="max-width: 100%;color: rgb(198, 120, 221);">int</span> 21h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ax,351Ch<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><span style="max-width: 100%;color: rgb(198, 120, 221);">int</span> 21h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov word ptr cs:oldInt1C_addr,bx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov word ptr cs:oldInt1C_addr[2],es<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov dx,offset newInt1C<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ax,251ch<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><span style="max-width: 100%;color: rgb(198, 120, 221);">int</span> 21h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />cli<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jmp @@2<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@1:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov es, cs:Self<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />inc es:Copies<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@_0: cmp es:NextDataSeg, -1<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jz @@_1<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov es, es:NextDataSeg<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jmp @@_0<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@_1: mov es:NextDataSeg, cs<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@2:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop di<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop es<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />ret<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; -----------------------------------------------------------------------<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />SaveCounter:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov word ptr es:[di], 'EL'<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov byte ptr es:[di+2], 'I'<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov byte ptr es:[di+3], bl<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />xor bx, bx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />add di, 4<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />ret<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; -----------------------------------------------------------------------<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />DisplayStr: push cs<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop ds<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ah, 9 <span style="max-width: 100%;color: rgb(198, 120, 221);">int</span> 21h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />ret<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; -----------------------------------------------------------------------<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />CmdLine:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push cs<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop ds<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />xor ax, ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov si, 80h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />lodsb<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />or al, al<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jnz @@1<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />ret<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@1:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov cx, ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />dec ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push si<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@0: lodsb<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />cmp al, ' '<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jz @@0 cmp al, '/'<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jnz @@2<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />lodsb<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />cmp al, 'S'<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jz @@_2<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />cmp al, 's'<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jnz @@2<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@_2:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />call SetHotKey<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />Print SetMsg<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ax, 4c00h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><span style="max-width: 100%;color: rgb(198, 120, 221);">int</span> 21h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@2:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop si<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push si<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@_3: lodsb<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />cmp al, 'A'<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jb @@3 cmp al, 'Z'<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />ja @@3<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />add byte ptr ds:[si-1],20h ; DownCase<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@3: loop @@_3<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop si<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop cx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />add si, cx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />lodsb<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />cmp al, 's' ; CLS<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jnz @@5 cmp word ptr ds:[si-3], 'lc'<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jnz @@5 cmp cs:Self, 0<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jz @Err<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ax, 0c0d7h+1 <span style="max-width: 100%;color: rgb(198, 120, 221);">int</span> 2fh<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@5: cmp al, 'h' ; HELP<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jz @help<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />cmp al, '?'<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jz @help<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />cmp al, 't' ; RET<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jnz @@6 cmp word ptr ds:[si-3], 'er'<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jnz @@6<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@7:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />cmp cs:Self, 0<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jz @Err<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ax, 0c0d7h+2 <span style="max-width: 100%;color: rgb(198, 120, 221);">int</span> 2fh<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@6: cmp al, 'w' ; NEW<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jnz @@8 cmp word ptr ds:[si-3], 'en'<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jnz @@8<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov cs:tsrOK, <span style="max-width: 100%;color: rgb(86, 182, 194);">true</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />ret<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@8:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />cmp al, 'l' ; ALL<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jnz @@9 cmp word ptr ds:[si-3], 'la'<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jnz @@9<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ax, 0c0d7h+3 <span style="max-width: 100%;color: rgb(198, 120, 221);">int</span> 2fh<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@9:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />cmp al, ' '<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jnz @Err<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />ret<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@Err:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />Print ErrMsg<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@help:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />Print HelpMsg<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ax, 4c00h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><span style="max-width: 100%;color: rgb(198, 120, 221);">int</span> 21h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />;---------------------------------------------------------------------------<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />tsrReplyOK:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />cmp cs:Self, 0<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jz @@1<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />Print Msg0<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push es<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ax, cs:Self<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@_10: mov es, ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ax, es:NextDataSeg<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />cmp ax, -1<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jnz @@_10<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ax, es<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@_0: push ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />dec ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov es, ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov bx, es:[3]<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />add ax, bx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />inc ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov es, ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />cmp word ptr es:[0], 'OC'<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jz @@_0<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov bx, cs<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />cmp ax, bx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop es<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jz @@2<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />Print Msg_0<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ah, 1 <span style="max-width: 100%;color: rgb(198, 120, 221);">int</span> 21h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />Print crlf<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />cmp al, 'y'<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jz @@3 cmp al, 'Y'<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jz @@3<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@2: ; Print Msg_1<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ax, 4c01h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><span style="max-width: 100%;color: rgb(198, 120, 221);">int</span> 21h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@3:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@1: mov cs:tsrOK, <span style="max-width: 100%;color: rgb(86, 182, 194);">true</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />ret<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />PrintCopies:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />cmp cs:Self, 0<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jz @@1<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push es ; Added -by- Mr. Lei<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov es, cs:Self ; Aug 24, 1993<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov al, es:Copies<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />inc al ; Total RI copies<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push ax ; Set es = current mcb<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ax, cs<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />dec ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov es, ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov cx, 5 ; Search end of file name<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov bx, 8<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@10: inc bx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />cmp byte ptr es:[bx], 20h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jz @@20 cmp byte ptr es:[bx], 0ffh<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jz @@20 cmp byte ptr es:[bx], 00h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jz @@20<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />loop @@10<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@20: ; Set current RI no<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov byte ptr es:[bx], ':' ; "RI:2"<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov byte ptr es:[bx+1], al<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />cmp bx, 8+7<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jnb @@30<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov byte ptr es:[bx+2], 0<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@30:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop es<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov cs:Msg_RI, al<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />Print Msg_2<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@1: ret<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />;---------------------------------------------------------------------------<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; Backup Interrupt Vector List<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />;<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />BackupVecList:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push ds<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push cs<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop es<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />xor si,si ; Vectors<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ds,si<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />movsw<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />movsw<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />xor bx, bx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov cx,00ffh<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@0: lodsw<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />xchg dx, ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />lodsw<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />cmp ax, es:[di-2]<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jnz @@1 cmp dx, es:[di-4]<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jz @@2<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@1: or bx, bx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jz @@3<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />call SaveCounter<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@3: xchg dx, ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />stosw<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />xchg dx, ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />stosw<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />loop @@0<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jmp @@4<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@2: inc bx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />loop @@0<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />call SaveCounter<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@4:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop ds<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />ret<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />;<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />;-----------------------------------------------------------------------------<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />BackupCVTchain:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ax, 'VC'<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />stosw<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push bx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push cx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push ds<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push es<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ah, 52h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><span style="max-width: 100%;color: rgb(198, 120, 221);">int</span> 21h ; ES:BX -- DOS table as described below<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; --------------------------------------------------------------------<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push es ; DPB chains<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push bx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />lds si, es:[bx]<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push cs<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop es<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ax, si<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />stosw<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ax, ds<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />stosw<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov bx, cs:cvtOfs<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />xor cx, cx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@1: mov al, ds:[si+1]<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />stosb<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ax, ds:[si+bx+12h]<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />stosw<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ax, ds:[si+bx+14h]<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />stosw<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />inc cx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />lds si, ds:[si+bx+18h]<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />cmp si, -1<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jnz @@1<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; mov ax, 5<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; mul cl<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; add ax, 4<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; add cs:tsrLength, ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop bx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop es<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; --------------------------------------------------------------------<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push es ; DCB file control blocks<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push bx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />les bx, es:[bx+4]<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@11: cmp word ptr es:[bx], -1<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jz @@10<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />les bx, es:[bx]<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jmp @@11<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@10:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ax, es<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />xchg ax, bx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push cs<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop es<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />stosw<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />xchg ax, bx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />stosw<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop bx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop es<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; add cs:tsrLength, 4<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; ---------------------------------------------------------------------<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push es ; Device Driver Chains<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop ds<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />add bx, 22h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov si, bx ; NUL<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop es<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ax, si<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />stosw<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ax, ds<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />stosw<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />xor cx, cx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />xor bx, bx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@9: push si<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov cl, 5<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />rep movsw<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />inc bx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop si<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />lds si, ds:[si]<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ax, si<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />inc ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jnz @@9<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop ds<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop cx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop bx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />ret<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; ----------------------------------------------------------------------------<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />BackupBiosData:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ax, '--'<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />stosw<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push ds<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push si<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov si, 40h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ds, si<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov si, 10h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />movsw<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov si, 0a8h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />movsw<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />movsw<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov si, 49h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov cx, 1dh<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />rep movsb<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov si, 0f0h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov cx, 8<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />rep movsw<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop si<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop ds<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />ret<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; ---------------------------------------------------------------------------<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />BackupMemoryManager:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push cs<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop es<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push ds<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push es<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />call SaveXMSstatus<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />call SaveEMSstatus<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop es<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop ds<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />ret<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />;---------------------------------------------------------------------<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />SaveEMSstatus:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />test cs:status, EMSbit<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jnz @@1<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />ret<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@1:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ax, 'ME'<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />stosw<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />inc di<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />inc di<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push di<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ah, 4dh<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><span style="max-width: 100%;color: rgb(198, 120, 221);">int</span> 67h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop di<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov es:[di-2], bx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />shl bx, 1<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />shl bx, 1<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />add di, bx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />ret<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; -------------------------------------------------------------------<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />SaveXMSstatus:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />call XMS_test<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />test cs:status, XMSbit<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jnz @@1<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />ret<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@1:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ax, 'MX'<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />stosw<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov dx, 1<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />call XMS_alloc<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jnz @@_1<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />xor cx, cx ; XMS alloc failure<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />stosw<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />ret<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@_1:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push dx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />sub dx, MaxHandles 10<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@2:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push dx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />call XMS_Lock<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop dx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jnz @@3 cmp bl, 0a2h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jnz @@4<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />add dx, 10<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jmp @@2<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@3: push dx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />call XMS_unlock<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop dx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@4:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov cs:handle_begin, dx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop dx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push dx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />call XMS_bstat<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />xor cx, cx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov cl, bl<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />inc cx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop dx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />call XMS_Free<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov dx, cs:Handle_begin<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push cx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push cs<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop es<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ax, cx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />stosw<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@5: push dx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />call XMS_Lock<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop dx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jnz @@6 cmp bl, 0a2h ; Handle invalid<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jz @@7<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@6: call XMS_unlock<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />add dx, 10<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jmp @@5<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@7: mov ax, dx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />stosw<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />add dx, 10<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />loop @@5<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop cx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />ret<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; ------------------------------------------------------------------<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />XMS_test:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push es<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ax, 4300h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><span style="max-width: 100%;color: rgb(198, 120, 221);">int</span> 2fh<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />cmp al, 80h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jnz @@9<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ax, 4310h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><span style="max-width: 100%;color: rgb(198, 120, 221);">int</span> 2fh<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov cs:XMS_control, bx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov cs:XMS_control[2], es<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />or cs:Status, XMSbit<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@9:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop es<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />ret<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />XMS_stat:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ah, 0<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />call dword ptr cs:xms_control<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov hma_exist, dl<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />ret<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />hma_exist db 0<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />XMS_alloc:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ah, 9<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />call dword ptr cs:xms_control<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />or ax, ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />ret<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />XMS_lock:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ah, 0ch<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />call dword ptr cs:xms_control<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />or ax, ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />ret<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />XMS_unlock:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ah, 0dh<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />call dword ptr cs:xms_control<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />or ax, ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />ret<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />XMS_bstat:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ah, 0eh<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />call dword ptr cs:xms_control<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />or ax, ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />ret<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />XMS_free:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ah, 0ah<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />call dword ptr cs:xms_control<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />or ax, ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />ret<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; ----------------------------------------------------------------------------<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />EMS_test:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push cs<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop ds<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov dx, offset EMMname<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ax, 3d00h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><span style="max-width: 100%;color: rgb(198, 120, 221);">int</span> 21h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jc @@2<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov bx, ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ah, 3eh<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><span style="max-width: 100%;color: rgb(198, 120, 221);">int</span> 21h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />or cs:Status, EMSbit<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@2:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />ret<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />EMMname db 'EMMXXXX0',0<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; -----------------------------------------------------------------------------<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />SetHotKey:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />xor bx, bx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />lodsb<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@1: lodsb<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />cmp al, 0dh<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jz @@9 cmp al, 'C'<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jnz @@2<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />or bl, LeftCtrl<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jmp @@1<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@2:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />cmp al, 'c'<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jnz @@3<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />or bl, RightCtrl<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jmp @@1<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@3:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />cmp al, 'A'<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jnz @@4<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />or bl, LeftAlt<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jmp @@1<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@4:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />cmp al, 'a'<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jnz @@5<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />or bl, RightAlt<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jmp @@1<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@5:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />cmp al, 'S'<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jnz @@6<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />or bl, LeftShift<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jmp @@1<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@6:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />cmp al, 's'<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jnz @@7<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />or bl, RightShift<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jmp @@1<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@7: pop ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jmp @Err<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@9:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov cs:HotKey, bl<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov cs:AuxHotKey, 2dh ; 'X' scan key<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />cmp al, '1'<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jz @@29<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov cs:AuxHotKey, 0<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@29:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />cmp cs:Self, 0<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jz @@30<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push es<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov es, cs:Self<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov es:HotKey, bl<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov bl, cs:AuxHotKey<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov es:AuxHotKey, bl<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop es<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@30:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />call GetRunFileName<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ax, 3d02h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><span style="max-width: 100%;color: rgb(198, 120, 221);">int</span> 21h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jc @@10<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push cs<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop ds<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov bx, ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov cx, 4<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov dx, 100h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ah, 40h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><span style="max-width: 100%;color: rgb(198, 120, 221);">int</span> 21h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jc @@10<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ax, 4200h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />xor cx, cx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov dx, 17h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><span style="max-width: 100%;color: rgb(198, 120, 221);">int</span> 21h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jc @@10<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov cx, 1<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov dx, offset AuxHotKey<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ah, 40h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><span style="max-width: 100%;color: rgb(198, 120, 221);">int</span> 21h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jc @@10<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ah, 3eh<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><span style="max-width: 100%;color: rgb(198, 120, 221);">int</span> 21h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@10:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />ret<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; -----------------------------------------------------------------------<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />GetRunFileName:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; Return:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; DS:DX Pointer of <span style="max-width: 100%;color: rgb(198, 120, 221);">this</span> run file name ASCIIZ <span style="max-width: 100%;color: rgb(230, 192, 123);">string</span><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push bx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push cx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push si<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push di<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push es<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push cs<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop es<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ax, es:[2ch]<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov es, ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />xor di, di<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov cx, 1000h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />xor al, al<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@1: repnz scasb<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />cmp es:[di], al<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />loopnz @@1<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov dx, di<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />add dx, 3<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push es<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop ds<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop es<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop di<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop si<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop cx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop bx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />ret<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; ---------------------------------------------------------------------------<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />GetMachineID:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push es<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov KBD102,True<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ax,40h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov es,ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />test byte ptr es:[96h], 00010000b<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jnz @@1<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov Kbd102,False<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@1:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />xor ax,ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />dec ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov es,ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov al,es:[0eh]<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov cs:MachineID, al<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop es<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />ret<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; ---------------------------------------------------------------------------<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />ModifyHotKeyPrompt:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />cmp cs:Kbd102, True<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jz @@9<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push cs<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop es<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push cs<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop ds<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov cx, 124<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov si, offset KMsg2<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov di, offset KMsg1<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />rep movsb<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@9: cmp cs:MachineID, 0fch<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jna @@10<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov cs:clsStrcolor, 70h ; Mono<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov cs:clsStr, 70h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@10:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />ret<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; ---------------------------------------------------------------------------<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />PrintHotKeyPrompt:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />Print Msg1<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov al, cs:HotKey<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ah, al<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />shr al, 1<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />shr al, 1<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />and ax, 33ch<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />or al, ah<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov dx, offset KeyMsg<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@40:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />or ax, ax ; Mr. Lei 4/25/1993<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jz @@_42<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />shr al, 1<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jnc @@41<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />call ColorDisplayStr<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; mov ah, 9<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; <span style="max-width: 100%;color: rgb(198, 120, 221);">int</span> 21h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />or al, al<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jz @@42<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push dx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov dx, offset PlusMsg<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />call ColorDisplayStr<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; Print PlusMsg<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop dx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@41: add dx, 12<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jmp @@40<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@42: pop ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@_42: cmp cs:AuxHotKey, 0<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jz @@43 cmp cs:HotKey, 0 ; Mr. Lei<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jz @@_43<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov dx, offset PlusMsg<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />call ColorDisplayStr<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; Print PlusMsg<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@_43: mov dx, offset AuxHotKeyName<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />call ColorDisplayStr<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; Print AuxHotKeyName<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@43:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />Print crlf<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />ret<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />ColorDisplayStr:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push bx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push cx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push dx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push si<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov bl, 0fh<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov si, dx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />xor bh, bh<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov cx, 1<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@1: lodsb<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />cmp al, '$'<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jz @@2<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />or al, al<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jz @@2<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />push cx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ah, 09h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><span style="max-width: 100%;color: rgb(198, 120, 221);">int</span> 10h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ah, 3 <span style="max-width: 100%;color: rgb(198, 120, 221);">int</span> 10h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />inc dl<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ah, 2 <span style="max-width: 100%;color: rgb(198, 120, 221);">int</span> 10h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop cx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jmp <span style="max-width: 100%;color: rgb(198, 120, 221);">short</span> @@1<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@2:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop si<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop dx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop cx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />pop bx<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />ret<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; ---------------------------------------------------------------------------<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />CmpSideKick:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />xor ax, ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov es, ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />les bx, es:[20h]<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />cmp word ptr es:[bx-4], 4b53h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jnz @@1 cmp word ptr es:[bx-2], 4942h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jz @@2<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@1: mov es, ax<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />les bx, es:[94h]<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />cmp word ptr es:[bx-2], 4b53h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jz @@2<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />ret<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@2: or cs:Status, SKbit<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />ret<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; ---------------------------------------------------------------------------<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />CmpDosVer: mov ah, 30h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><span style="max-width: 100%;color: rgb(198, 120, 221);">int</span> 21h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />cmp al, 3<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jb @@1 cmp al, 3<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jna @@2<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov cs:cvtOfs, 1<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />ret<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@2: mov cs:cvtOfs, 0<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />ret<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@1: Print DosVerErr<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ax, 4cffh<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><span style="max-width: 100%;color: rgb(198, 120, 221);">int</span> 21h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />DosVerErr db 'Sorry, DOS version too lower !',0dh,0ah,'$'<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />HotKeyValid:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />cmp cs:HotKey, 0<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jnz @@_1<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />cmp cs:AuxHotKey, 0<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />jnz @@_1<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />Print HotKeyErr<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />mov ax, 4cfeh<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><span style="max-width: 100%;color: rgb(198, 120, 221);">int</span> 21h<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />@@_1: ret<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />HotKeyErr db 'Sorry, please setup hotkey again. ',0dh,0ah,'$'<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />eof:<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />ends<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />end Start<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /><br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />; ------------- The End ! </span>---------------------------------------------------</section>
<pre style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><section style="max-width: 100%;min-height: 1em;letter-spacing: 0.544px;white-space: normal;color: rgb(0, 0, 0);font-family: -apple-system-font, system-ui, "Helvetica Neue", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;widows: 1;line-height: 1.75em;box-sizing: border-box !important;overflow-wrap: break-word !important;"><br /></section><section style="max-width: 100%;min-height: 1em;letter-spacing: 0.544px;white-space: normal;color: rgb(0, 0, 0);font-family: -apple-system-font, system-ui, "Helvetica Neue", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;widows: 1;line-height: 1.75em;box-sizing: border-box !important;overflow-wrap: break-word !important;"><strong style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><span style="max-width: 100%;letter-spacing: 0.5px;font-size: 14px;box-sizing: border-box !important;overflow-wrap: break-word !important;"><strong style="max-width: 100%;font-size: 16px;letter-spacing: 0.544px;box-sizing: border-box !important;overflow-wrap: break-word !important;"><span style="max-width: 100%;letter-spacing: 0.5px;box-sizing: border-box !important;overflow-wrap: break-word !important;">—</span></strong>完<strong style="max-width: 100%;font-size: 16px;letter-spacing: 0.544px;box-sizing: border-box !important;overflow-wrap: break-word !important;"><span style="max-width: 100%;letter-spacing: 0.5px;font-size: 14px;box-sizing: border-box !important;overflow-wrap: break-word !important;"><strong style="max-width: 100%;font-size: 16px;letter-spacing: 0.544px;box-sizing: border-box !important;overflow-wrap: break-word !important;"><span style="max-width: 100%;letter-spacing: 0.5px;box-sizing: border-box !important;overflow-wrap: break-word !important;">—</span></strong></span></strong></span></strong></section><section style="max-width: 100%;letter-spacing: 0.544px;white-space: normal;font-family: -apple-system-font, system-ui, "Helvetica Neue", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;widows: 1;box-sizing: border-box !important;overflow-wrap: break-word !important;"><section powered-by="xiumi.us" style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><section style="margin-top: 15px;margin-bottom: 25px;max-width: 100%;opacity: 0.8;box-sizing: border-box !important;overflow-wrap: break-word !important;"><section style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><section style="max-width: 100%;letter-spacing: 0.544px;box-sizing: border-box !important;overflow-wrap: break-word !important;"><section powered-by="xiumi.us" style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><section style="margin-top: 15px;margin-bottom: 25px;max-width: 100%;opacity: 0.8;box-sizing: border-box !important;overflow-wrap: break-word !important;"><section style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><section style="margin-bottom: 15px;padding-right: 0em;padding-left: 0em;max-width: 100%;min-height: 1em;color: rgb(127, 127, 127);font-size: 12px;font-family: sans-serif;line-height: 25.5938px;letter-spacing: 3px;box-sizing: border-box !important;overflow-wrap: break-word !important;"><span style="max-width: 100%;color: rgb(0, 0, 0);box-sizing: border-box !important;overflow-wrap: break-word !important;"><strong style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><span style="max-width: 100%;font-size: 16px;font-family: 微软雅黑;caret-color: red;box-sizing: border-box !important;overflow-wrap: break-word !important;">为您推荐</span></strong></span></section><section style="margin: 5px 32px;padding-right: 0em;padding-left: 0em;max-width: 100%;min-height: 1em;font-family: sans-serif;letter-spacing: 0px;opacity: 0.8;line-height: normal;box-sizing: border-box !important;overflow-wrap: break-word !important;">如何评价何恺明团队的最新工作RegNet?<br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" /></section><section style="margin-top: 5px;margin-bottom: 5px;padding-right: 0em;padding-left: 0em;max-width: 100%;min-height: 1em;font-family: sans-serif;letter-spacing: 0px;opacity: 0.8;line-height: normal;box-sizing: border-box !important;overflow-wrap: break-word !important;"><span style="max-width: 100%;color: rgb(87, 107, 149);-webkit-tap-highlight-color: rgba(0, 0, 0, 0);cursor: pointer;font-size: 14px;box-sizing: border-box !important;overflow-wrap: break-word !important;">研究生从入门到放弃!不好意思老板,我这周没进展</span></section><section style="margin-top: 5px;margin-bottom: 5px;padding-right: 0em;padding-left: 0em;max-width: 100%;min-height: 1em;font-family: sans-serif;letter-spacing: 0px;opacity: 0.8;line-height: normal;box-sizing: border-box !important;overflow-wrap: break-word !important;"><span style="max-width: 100%;color: rgb(87, 107, 149);-webkit-tap-highlight-color: rgba(0, 0, 0, 0);cursor: pointer;font-size: 14px;box-sizing: border-box !important;overflow-wrap: break-word !important;">有了这个神器,轻松用 Python 写个 App</span></section><section style="margin-top: 5px;margin-bottom: 5px;padding-right: 0em;padding-left: 0em;max-width: 100%;min-height: 1em;font-family: sans-serif;letter-spacing: 0px;opacity: 0.8;line-height: normal;box-sizing: border-box !important;overflow-wrap: break-word !important;"><span style="color: rgb(87, 107, 149);-webkit-tap-highlight-color: rgba(0, 0, 0, 0);cursor: pointer;max-width: 100%;font-size: 14px;box-sizing: border-box !important;overflow-wrap: break-word !important;">MIT最新深度学习入门课,安排起来!</span></section><section style="margin-top: 5px;margin-bottom: 5px;padding-right: 0em;padding-left: 0em;max-width: 100%;min-height: 1em;font-family: sans-serif;letter-spacing: 0px;opacity: 0.8;line-height: normal;box-sizing: border-box !important;overflow-wrap: break-word !important;"><span style="font-size: 14px;">一个AI PhD的毕业随感</span></section></section></section></section></section></section></section></section></section>
本篇文章来源于: 深度学习这件小事
本文为原创文章,版权归知行编程网所有,欢迎分享本文,转载请保留出处!
你可能也喜欢
- ♥ 一文概览2D人体姿态估计05/31
- ♥ 机器学习,从入门到放弃?03/05
- ♥ 目标检测之FPN网络详解06/14
- ♥ 2021年深度学习主机配置推荐08/02
- ♥ 仅需10分钟:以解读Kaggle项目为例,开启你的机器学习之路03/24
- ♥ 从论文到PPT,一键生成!从此报告不用愁!02/11
内容反馈