-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathcolors map.asm
75 lines (52 loc) · 1.17 KB
/
colors map.asm
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
; this sample prints 16x16 color map,
; it uses all possible colors.
name "colors"
org 100h
; set video mode:
; text mode. 80x25. 16 colors. 8 pages.
mov ax, 3
int 10h
; blinking disabled for compatibility with dos,
; emulator and windows prompt do not blink anyway.
mov ax, 1003h
mov bx, 0 ; disable blinking.
int 10h
mov dl, 0 ; current column.
mov dh, 0 ; current row.
mov bl, 0 ; current attributes.
jmp next_char
next_row:
inc dh
cmp dh, 16
je stop_print
mov dl, 0
next_char:
; set cursor position at (dl,dh):
mov ah, 02h
int 10h
mov al, 'a'
mov bh, 0
mov cx, 1
mov ah, 09h
int 10h
inc bl ; next attributes.
inc dl
cmp dl, 16
je next_row
jmp next_char
stop_print:
; set cursor position at (dl,dh):
mov dl, 10 ; column.
mov dh, 5 ; row.
mov ah, 02h
int 10h
; test of teletype output,
; it uses color attributes
; at current cursor position:
mov al, 'x'
mov ah, 0eh
int 10h
; wait for any key press:
mov ah, 0
int 16h
ret