Line | |
---|
1 | .define .lar2
|
---|
2 | .text
|
---|
3 |
|
---|
4 | .lar2:
|
---|
5 | ! bx, descriptor address
|
---|
6 | ! ax, index
|
---|
7 | pop cx
|
---|
8 | pop dx ! base address
|
---|
9 | push cx
|
---|
10 | push si
|
---|
11 | mov si,dx
|
---|
12 | sub ax,(bx)
|
---|
13 | mov cx,4(bx)
|
---|
14 | imul cx
|
---|
15 | add si,ax
|
---|
16 | sar cx,#1
|
---|
17 | jnb 1f
|
---|
18 | xorb ah,ah
|
---|
19 | lodsb
|
---|
20 | pop si
|
---|
21 | pop bx
|
---|
22 | push ax
|
---|
23 | jmp (bx)
|
---|
24 | 1:
|
---|
25 | pop dx ! saved si
|
---|
26 | mov ax,4(bx)
|
---|
27 | pop bx ! return address
|
---|
28 | sub sp,ax
|
---|
29 | mov ax,di ! save di
|
---|
30 | mov di,sp
|
---|
31 | rep
|
---|
32 | mov
|
---|
33 | mov di,ax
|
---|
34 | mov si,dx
|
---|
35 | jmp (bx)
|
---|
Note:
See
TracBrowser
for help on using the repository browser.