initial cammit
[qbasicapps.git] / system / CMOS string / getenv.asm
1 ;       Svjatoslav Agejenko\r
2 ;       s@ttk17.edu.ee\r
3 ;       2002.10.07\r
4 ;       compile with FASM ( Flat ASseMbler ) by Tomasz Grysztar\r
5 \r
6 org     100h\r
7 \r
8 cmaddr = 53h\r
9 \r
10 \r
11         mov     ah, 3ch                         ; create file\r
12         sub     cx, cx\r
13         mov     dx, name\r
14         int     21h\r
15         mov     [hand], ax\r
16 \r
17         mov     al, cmaddr\r
18         out     70h, al\r
19         in      al, 71h\r
20         \r
21         mov     di, eof\r
22         sub     cx, cx\r
23         mov     cl, al\r
24         mov     dl, cmaddr\r
25 \r
26 l1:     inc     dl\r
27         mov     al, dl\r
28         out     70h, al\r
29         in      al, 71h\r
30         stosb\r
31         loop    l1\r
32 \r
33         mov     cx, di                          ; write to file\r
34         sub     cx, line\r
35         mov     ah, 40h\r
36         mov     bx, [hand]\r
37         mov     dx, line\r
38         int     21h\r
39 \r
40         mov     ah, 3eh                         ; close file\r
41         mov     bx, [hand]\r
42         int     21h\r
43 \r
44         ret\r
45 \r
46 error:  mov     ah, 9\r
47         mov     dx, err\r
48         int     21h\r
49         ret\r
50 \r
51 name    db 'setenv.bat', 0\r
52 hand    dw 0\r
53 err     db 'error occured$'\r
54 line    db 'SET CMOSE='\r
55 eof:\r