📄 avance.txt
字号:
23h
2-4 Bits 0-2 of the HW cursor X position. The upper bits are in index
21h
5 If set enables the HW cursor. To preserve the stability of the
cursor, this bit should be set with each update of this register.
6 Bit 0 of the HW cursor Y position. (see note on interlace).
3d4h index 27h W(R/W): Cursor Map address
bit 0-10 The address in video memory where the HW cursor map starts.
In planar modes this address is in units of 256 bytes,
in packed modes in units of 1024 bytes.
The HW cursor is a 64x64 bitmap imposed on the display.
The cursor map is stored as a 64x64x2bit array, where each pixel is:
0: Background color (3C0h index 16h)
1: Foreground color (3C0h index 15h)
2: The screen data (transparent cursor).
3: Inverted screen data (XOR cursor)
Note: in interlaced modes the cursor is shown double height.
3d4h index 28h (R/W): Vertical Extended reg
bit 7 CRTC Offset bit 8. Bits 0-7 are in 3d4h index 13h
Note: The extensions of the CRTC registers in this register are only
active if 3d4h index 19h bit 7 is set.
3d4h index 2Ah (R/W): Horizontal Extended reg (2201 +)
bit 0 Horizontal Total bit 8. Bits 0-7 are in 3d4h index 00h
3 Horizontal Blanking ??.
4 ??
5 ??
Note: The extensions of the CRTC registers in this register are only active
if 3d4h index 19h bit 7 is set.
3D6h (R/W): Read Address Register
bit 0-4 64k Read bank number. If 3CEh index Fh bit 2 is set all reads use
this bank number, if clear all accesses use 3D7h.
3D7h (R/W): Read/Write Address Register
bit 0-4 64k Bank number. If 3CEh index Fh bit 2 is clear all accesses use
this bank number, if set writes use this bank and reads use 3D6h.
8280h W(R/W): Source address low
bit 0-15 The lower 16 bits of the pixel address of the source area.
8282h (R/W): Source address high
bit 0-7 The upper 8 bits of the pixel address of the source area.
Calculated as (line no.)*(pixels per line)+(pixel no. in line).
8284h W(R/W): Source area scanline width.
bit 0-15 The number of pixels in a scanline at the source.
8286h W(R/W): Destination address low.
bit 0-15 Lower 16 bits of the pixel address of the destination area.
8288h (R/W): Destination Address high.
bit 0-7 The upper 8 bits of the pixel address of the destination area.
Calculated as (line no.)*(pixels per line)+(pixel no. in line).
828Ah W(R/W): Destination area scanline width
bit 0-15 Number of pixels in a scanline at the destination.
828Ch W(R/W): Width of op.
bit 0-15 Width of the blit area in pixels.
828Eh W(R/W): Height of op.
bit 0-15 Number of lines in the blit area.
8290h (R/W):
bit 0-5 7 If moving towards higher co-ordinates, 1 if moving towards lower.
0 (or don't care) for line draws
6 If set drawing only happens within the rectangle defined by
8294h-9Ah.
X co-ordinate must be >= 8294h and <=8296h.
Y co-ordinate must be >= 8298h and <=829Ah.
8292h W(R/W):
bit 0-7 always 0Dh ???
8 (Line Draw) If set the final position is to the left of the start
9 (Line Draw) If set the final position is above the start
10 (Line Draw) If set (Delta X) and (Delta Y) are swapped when
calculating the Bresenham constants in 82A2h-A6h.
11 ??
12 Set if moving towards lower co-ordinates, clear if not.
8294h W(R/W): Clipping left
bit 0-15 If 8290h bit 6 is set drawing only happens if the X-co-ordinate is
>= this value
8296h W(R/W): Clipping right
bit 0-15 If 8290h bit 6 is set drawing only happens if the X-co-ordinate is
<= this value
8298h W(R/W): Clipping top
bit 0-15 If 8290h bit 6 is set drawing only happens if the Y-co-ordinate is
>= this value
829Ah W(R/W): Clipping bottom
bit 0-15 If 8290h bit 6 is set drawing only happens if the Y-co-ordinate is
<= this value
829Ch W(R/W): Start X co-ordinate
bit 0-15 Starting X co-ordinate of the destination area.
829Eh W(R/W): Start Y co-ordinate
bit 0-15 Starting Y co-ordinate of the destination area
82A0h W(R/W):
bit 0-15 Always set to 0 ??
82A2h W(R/W): Bresenham Constant 1
bit 0-15 The Bresenham Constant 1 used for line drawing
Calculated as 2*(Delta Y). If 8292h bit 10 is set 2*(Delta X) is
used.
82A4h W(R/W): Bresenham Constant 2
bit 0-15 The Bresenham Constant 2 used for line drawing
Calculated as 2*((Delta Y) - (Delta X)). If 8292h bit 10 is set
(Delta Y) and (Delta X) are swapped in the calculation.
82A6h W(R/W): Bresenham Error Term
bit 0-15 The Bresenham Error Term used for line drawing.
Calculated as 2*(Delta Y) + (Delta X). If 8292h bit 10 is set
(Delta Y) and (Delta X) are swapped in the calculation.
82A8h W(R/W):
bit 0-15 (Line draw) Pattern mask. Only the set bits are drawn.
82AAh (R/W): COP status/instruction
bit 0-3 (R) When 0 the COP is free.
0-7 (W) Graphics instruction:
1: Fill rectangle
2: Copy rectangle
4: ?
8: Line draw
82B0h
82BAh (R): Status??
bit 7 Set if busy ?
82BCh
82C0h
82C8h W(R/W):
bit
82CAh W(R/W):
82CCh W(R/W):
ID Avance Logic chip:
old:=rdinx($3d4,$1A);
clrinx($3d4,$1A,$10); {Disable extensions}
if not testinx($3d4,$19) then
begin
setinx($3d4,$1A,$10); {Enable extensions}
if testinx($3d4,$19) and testinx2($3d4,$1A,$3F) then
Avance Logic AL2101 !!
end;
wrinx($3d4,$1A,old);
Video modes:
20h T 132 25 16
21h T 132 30 16
22h T 132 43 16
23h T 132 60 16
24h T 80 30 16
25h T 80 43 16
26h T 80 60 16
27h G 960 720 16 PL4
28h G 512 512 256 P8
29h G 640 400 256 P8
2Ah G 640 480 256 P8
2Bh G 800 600 16 PL4
2Ch G 800 600 256 P8
2Dh G 768 1024 16 Pl4
2Eh G 768 1024 256 P8
2Fh G 1024 768 4
30h G 1024 768 16 PL4
31h G 1024 768 256 P8
33h G 1024 1024 256 P8
36h G 1280 1024 16 PL4
37h G 1280 1024 256 P8
40h G 320 200 64k P16
41h G 512 512 64k P16
42h G 640 400 64k P16
43h G 640 480 64k P16
44h G 800 600 64k P16
45h G 1024 768 64k P16
48h G 640 480 16m P24
49h G 800 600 16m P24
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -