]> 4ch.mooo.com Git - 16.git/blob - 16/xw/mxsc.asm
wwww
[16.git] / 16 / xw / mxsc.asm
1 ;-----------------------------------------------------------\r
2 ;\r
3 ; MXSC.ASM - Set color function\r
4 ; Copyright (c) 1994 by Alessandro Scotti\r
5 ;\r
6 ;-----------------------------------------------------------\r
7 WARN    PRO\r
8 INCLUDE MODEX.DEF\r
9 \r
10 PUBLIC  mxSetColor\r
11 \r
12 MX_TEXT         SEGMENT USE16 PARA PUBLIC 'CODE'\r
13                 ASSUME cs:MX_TEXT, ds:NOTHING, es:NOTHING\r
14 \r
15 ;-----------------------------------------------------------\r
16 ;\r
17 ; Updates the selected DAC register.\r
18 ;\r
19 ; Input:\r
20 ;       Index   = index of color to set\r
21 ;       R, G, B = color components\r
22 ; Output:\r
23 ;       none\r
24 ;\r
25 mxSetColor      PROC FAR\r
26         ARG     B:BYTE:2,       \\r
27                 G:BYTE:2,       \\r
28                 R:BYTE:2,       \\r
29                 Index:WORD      = ARG_SIZE\r
30         .enter  0\r
31         .push   ds, si\r
32 \r
33         mov     ax, [Index]\r
34         mov     dx, 3C8h                ; PEL write address register\r
35         out     dx, al\r
36         inc     dx\r
37 \r
38         mov     al, [R]\r
39         out     dx, al\r
40         mov     al, [G]\r
41         out     dx, al\r
42         mov     al, [B]\r
43         out     dx, al\r
44 \r
45         .pop    ds, si\r
46         .leave  ARG_SIZE\r
47 mxSetColor      ENDP\r
48 \r
49 MX_TEXT         ENDS\r
50 END\r