aboutsummaryrefslogtreecommitdiff
path: root/font_dl.asm
blob: bbb2b986b958e213a10ad477a08c80ae98b4fe2b (plain)
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
 *= $a000
 .incbin "font.dat"
dlist
 .byte $70, $70, $30 ; 2 8-line blanks, 1 4-line blank
 .byte $42           ; LMS GR.0
dl_top_lms
 .word $a500         ; base address of 1st screen
 .byte $02, $02, $02, $02, $02, $02, $02, $02
 .byte $02, $02, $02, $02, $02, $02, $02, $02
 .byte $02, $02, $02, $02, $02, $02 ; 22 GR.0 lines
 .byte $00           ; 1 blank line
 .byte $42           ; another LMS (edit/status box)
dl_bottom_lms
 .word $a480         ; edit box base address
 .word $02           ; 2nd line of edit box
 .byte $41           ; JVB
 .word dlist

status_box
 *= * + 80 ; 2 lines

edit_box
 *= * + 160 ; 4 lines

end_boxes ; currently $a515

; screens are 920 bytes each (23 lines * 40), cannot
; cross the 4K boundary at $b000, and must end 
; before the ROM (or unwired addresses) at $c000.

; on a 52K machine (expanded 800 or XL/XE running Translator),
; we'd have another 4K of RAM from $c000-$cfff. With Translator,
; we also could have 2K at $d800-$dfff (the floating point ROM,
; which we don't use)... and we wouldn't have to have the font
; at $a000, it could be plopped right into the OS default location
; at $e000. maybe this will happen someday. meanwhile:

 *= $b000 - (920 * 3)
screen0
 *= * + 920
screen1
 *= * + 920
screen2      ; ends 1 byte before $b000 boundary
 *= * + 920
screen3      ; starts at $b000 boundary
 *= * + 920
screen4
 *= * + 920
screen5
 *= * + 920
screen6
 *= * + 920
end_screens ; currently $be60

; 7 screens ain't so bad, really. eventually though, we want to
; add scrollback to them, meaning fewer of them. sigh.