|
|
1.1 root 1: head 1.1;
2: branch ;
3: access ;
4: symbols ;
5: locks bin:1.1; strict;
6: comment @@;
7:
8:
9: 1.1
10: date 92.10.01.12.05.14; author bin; state Exp;
11: branches ;
12: next ;
13:
14:
15: desc
16: @@
17:
18:
19:
20: 1.1
21: log
22: @Initial revision
23: @
24: text
25: @////////
26: /
27: / srlq( w0, w1, w2, w3, count ) - shift right logical a quad word.
28: /
29: / Input: w0..w3 form a quad word.
30: / count is the number of bits
31: /
32: / Action: Perform a shift right logical of w0..w3 by count bits.
33: /
34: / Return: _fpac_ contains the shifted result.
35: /
36: ////////
37:
38: .globl srlq_
39: .shri
40:
41: srlq_: push si
42: push di
43: push bp
44: mov bp,sp
45: mov ax,8(bp)
46: mov dx,10(bp)
47: mov si,12(bp)
48: mov di,14(bp)
49: mov cx,16(bp)
50: jcxz 1f
51:
52: 0: shr di,$1
53: rcr si,$1
54: rcr dx,$1
55: rcr ax,$1
56: loop 0b
57:
58: 1: mov _fpac_+0,ax
59: mov _fpac_+2,dx
60: mov _fpac_+4,si
61: mov _fpac_+6,di
62: pop bp
63: pop di
64: pop si
65: ret
66: @
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.