Home » Archimedes archive » Archimedes World » AW-1996-10.adf » !AcornAns_AcornAns » NewModes/s/AAModes4

NewModes/s/AAModes4

This website contains an archive of files for the Acorn Electron, BBC Micro, Acorn Archimedes, Commodore 16 and Commodore 64 computers, which Dominic Ford has rescued from his private collection of floppy disks and cassettes.

Some of these files were originally commercial releases in the 1980s and 1990s, but they are now widely available online. I assume that copyright over them is no longer being asserted. If you own the copyright and would like files to be removed, please contact me.

Tape/disk: Home » Archimedes archive » Archimedes World » AW-1996-10.adf » !AcornAns_AcornAns
Filename: NewModes/s/AAModes4
Read OK:
File size: 171B bytes
Load address: 0000
Exec address: 0000
File contents
r0      RN      0
r1      RN      1
r2      RN      2
r3      RN      3
r4      RN      4
r5      RN      5
r6      RN      6
r7      RN      7
r8      RN      8
r9      RN      9
r10     RN      10
r11     RN      11
r12     RN      12
r13     RN      13
r14     RN      14
r15     RN      15
sp      RN      r13
lr      RN      r14
pc      RN      r15

Service_ModeExtension	*	&50
ModeNum		*	96			;Will use mode numbers ModeNum & ModeNum+1
						; - for a couple of 4bpp games modes (standard & vga)
		GBLA	colours
colours		SETA	16
	[ colours=2
n_basemode	*	4
v_basemode	*	25
ppb		*	8			;Pixels per byte
	]
	[ colours=4
n_basemode	*	1
v_basemode	*	26
ppb		*	4
	]
	[ colours=16
n_basemode	*	9
v_basemode	*	27
ppb		*	2
	]
	[ colours=256
n_basemode	*	13
v_basemode	*	28
ppb		*	1
	]
k	*	(2*ppb+3)

		GBLA	n_maxcols
		GBLA	n_maxrows
		GBLA	n_hpix
		GBLA	n_vpix
		GBLA	n_hcycle
		GBLA	n_vcycle
		GBLA	n_hsyncwidth
		GBLA	n_vsyncwidth
		GBLA	n_remainh
		GBLA	n_hbordstart
		GBLA	n_hdispstart
		GBLA	n_hdispend
		GBLA	n_hbordend
		GBLA	n_remainv
		GBLA	n_vbordstart
		GBLA	n_vdispstart
		GBLA	n_vdispend
		GBLA	n_vbordend
		GBLA	n_screensize

n_maxcols	SETA	36			;To give a 288*200 pixel mode
n_maxrows	SETA	25
n_maxcols	SETA	(n_maxcols+3) :AND: :NOT:3	;round up to a multiple of 4
n_hpix		SETA	8*n_maxcols
n_vpix		SETA	8*n_maxrows

n_hcycle	SETA	1024			;From Acorn User May 1990, for 640*256 pixel modes
n_vcycle	SETA	320			;(for the record)
n_hsyncwidth	SETA	58
n_vsyncwidth	SETA	0
						;Following by experimentation & comparison with MODE 13
						;display of 320*256, to yield 288*200 version:
n_hcycle	SETA	512
n_hsyncwidth	SETA	58
n_vcycle	SETA	310
n_vsyncwidth	SETA	0

n_remainh	SETA	n_hcycle-n_hpix
n_hbordstart	SETA	16+48			;48 (as for 13 below) ie (512-320)/4
n_hdispstart	SETA	n_hbordstart+n_remainh/2-48
n_hdispend	SETA	n_hdispstart+n_hpix
n_hbordend	SETA	n_hdispend+n_remainh/2-48
n_remainv	SETA	n_vcycle-n_vpix
n_vbordstart	SETA	10+13			;10 from AU for 640*256 pixels modes, 13 to give same effect
n_vdispstart	SETA	n_vbordstart+n_remainv/2-13	;as for standard 320*256 pixel mode (ie (310-256)/4)
n_vdispend	SETA	n_vdispstart+n_vpix
n_vbordend	SETA	n_vdispend+n_remainv/2-13
n_screensize	SETA	((n_vpix*n_hpix)/ppb + &fff) :AND: &fffff000

		GBLA	v_maxcols
		GBLA	v_maxrows
		GBLA	v_hpix
		GBLA	v_vpix
		GBLA	v_hcycle
		GBLA	v_vcycle
		GBLA	v_hsyncwidth
		GBLA	v_vsyncwidth
		GBLA	v_remainh
		GBLA	v_hbordstart
		GBLA	v_hdispstart
		GBLA	v_hdispend
		GBLA	v_hbordend
		GBLA	v_remainv
		GBLA	v_vbordstart
		GBLA	v_vdispstart
		GBLA	v_vdispend
		GBLA	v_vbordend
		GBLA	v_screensize

v_maxcols	SETA	36			;To give a 288*400 pixel mode
v_maxrows	SETA	50
v_maxcols	SETA	(v_maxcols+3) :AND: :NOT:3	;round up to a multiple of 4
v_hpix		SETA	8*v_maxcols
v_vpix		SETA	8*v_maxrows

v_hcycle	SETA	412+8			;+8 needed for stability on my system under some conditions
v_hsyncwidth	SETA	28
v_vcycle	SETA	524
v_vsyncwidth	SETA	1

v_remainh	SETA	v_hcycle-v_hpix
v_hbordstart	SETA	29+v_remainh/2-4	;-4 to correct for +8
v_hdispstart	SETA	v_hbordstart+0
v_hdispend	SETA	v_hdispstart+v_hpix
v_hbordend	SETA	v_hdispend+0
v_remainv	SETA	v_vcycle-v_vpix
v_vbordstart	SETA	12+v_remainv/2
v_vdispstart	SETA	v_vbordstart+0
v_vdispend	SETA	v_vdispstart+v_vpix
v_vbordend	SETA	v_vdispend+0
v_screensize	SETA	((v_vpix*v_hpix)/ppb + &fff) :AND: &fffff000


	[ colours=256
colours		SETA	64
	]

base	DCD	0
	DCD	0
	DCD	0
	DCD	serv-base
	DCD	titl-base
	DCD	help-base
	DCD	0

titl	DCB	"AAModes4", 0
	ALIGN

help	DCB	"AAModes4",9,"1.00 (01 Aug 1996)", 0

serv	TEQ	r1, #Service_ModeExtension
	MOVNES	pc, lr
	TEQ	r2, #ModeNum
	TEQNE	r2, #ModeNum+1
	MOVNES	pc, lr
	TEQ	r2, #ModeNum+1
	BEQ	vga
	TEQ	r3, #0
	TEQNE	r3, #1
	TEQNE	r3, #3
	TEQNE	r3, #4
	TEQNE	r3, #5
	CMNNE	r3, #1
	MOVNES	pc, lr
	ADR	r3, norm_vidc
	ADR	r4, norm_ws
	MOV	r1, #0
	MOVS	pc, lr
vga	TEQ	r3, #1
	TEQNE	r3, #3
	TEQNE	r3, #4
	TEQNE	r3, #5
	CMNNE	r3, #1
	MOVNES	pc, lr
	ADR	r3, vga_vidc
	ADR	r4, vga_ws
	MOV	r1, #0
	MOVS	pc, lr

norm_vidc
	DCD	0
	DCD	n_basemode
	DCD	128<<24 + (n_hcycle-2)/2<<14
	DCD	132<<24 + (n_hsyncwidth-2)/2<<14
	DCD	136<<24 + (n_hbordstart-1)/2<<14
	DCD	140<<24 + (n_hdispstart-k)/2<<14
	DCD	144<<24 + (n_hdispend-k)/2<<14
	DCD	148<<24 + (n_hbordend-1)/2<<14
	DCD	160<<24 + n_vcycle<<14
	DCD	164<<24 + n_vsyncwidth<<14
	DCD	168<<24 + (n_vbordstart-1)<<14
	DCD	172<<24 + (n_vdispstart-1)<<14
	DCD	176<<24 + (n_vdispend-1)<<14
	DCD	180<<24 + (n_vbordend-1)<<14
	DCD	-1
norm_ws
	DCD	0
	DCD	n_basemode
	DCD	0, 0
	DCD	1, n_maxcols-1
	DCD	2, n_maxrows-1
	DCD	3, colours-1
	DCD	4, 2
	DCD	5, 2
	DCD	6, n_hpix/ppb
	DCD	7, n_screensize
	DCD	11, n_hpix-1
	DCD	12, n_vpix-1
	DCD	-1

vga_vidc
	DCD	0
	DCD	v_basemode
	DCD	128<<24 + (v_hcycle-2)/2<<14
	DCD	132<<24 + (v_hsyncwidth-2)/2<<14
	DCD	136<<24 + (v_hbordstart-1)/2<<14
	DCD	140<<24 + (v_hdispstart-k)/2<<14
	DCD	144<<24 + (v_hdispend-k)/2<<14
	DCD	148<<24 + (v_hbordend-1)/2<<14
	DCD	160<<24 + v_vcycle<<14
	DCD	164<<24 + v_vsyncwidth<<14
	DCD	168<<24 + (v_vbordstart-1)<<14
	DCD	172<<24 + (v_vdispstart-1)<<14
	DCD	176<<24 + (v_vdispend-1)<<14
	DCD	180<<24 + (v_vbordend-1)<<14
	DCD	156<<24 + 103<<14			;Don't know what these two lines set - 156 case
 	DCD	224<<24 + &1209				;copied from Acorn's GamesModes module;
	DCD	-1					;224 case modified from &1A0D to &1209 to get usable
							;display. Query: something to do with refresh rate?
							;nb unsure of significance of high bits, eg &1009
							;gives same result (while &1008 gives 36Hz display
							;and &100A gives 72Hz display).
vga_ws
	DCD	0
	DCD	v_basemode
	DCD	0, 0
	DCD	1, v_maxcols-1
	DCD	2, v_maxrows-1
	DCD	3, colours-1
	DCD	4, 2
	DCD	5, 1
	DCD	6, v_hpix/ppb
	DCD	7, v_screensize
	DCD	11, v_hpix-1
	DCD	12, v_vpix-1
	DCD	-1					;Few notes on mode definitions:
							;hcycle/vcycle seems to fix pixel aspect ratio,
							;hcycle & vcycle (possible the product) seems to fix
							;refresh rate, & hpix*vpix seems to fix bandwidth.
	END
00000000  0a 72 30 20 20 20 20 20  20 52 4e 20 20 20 20 20  |.r0      RN     |
00000010  20 30 0a 72 31 20 20 20  20 20 20 52 4e 20 20 20  | 0.r1      RN   |
00000020  20 20 20 31 0a 72 32 20  20 20 20 20 20 52 4e 20  |   1.r2      RN |
00000030  20 20 20 20 20 32 0a 72  33 20 20 20 20 20 20 52  |     2.r3      R|
00000040  4e 20 20 20 20 20 20 33  0a 72 34 20 20 20 20 20  |N      3.r4     |
00000050  20 52 4e 20 20 20 20 20  20 34 0a 72 35 20 20 20  | RN      4.r5   |
00000060  20 20 20 52 4e 20 20 20  20 20 20 35 0a 72 36 20  |   RN      5.r6 |
00000070  20 20 20 20 20 52 4e 20  20 20 20 20 20 36 0a 72  |     RN      6.r|
00000080  37 20 20 20 20 20 20 52  4e 20 20 20 20 20 20 37  |7      RN      7|
00000090  0a 72 38 20 20 20 20 20  20 52 4e 20 20 20 20 20  |.r8      RN     |
000000a0  20 38 0a 72 39 20 20 20  20 20 20 52 4e 20 20 20  | 8.r9      RN   |
000000b0  20 20 20 39 0a 72 31 30  20 20 20 20 20 52 4e 20  |   9.r10     RN |
000000c0  20 20 20 20 20 31 30 0a  72 31 31 20 20 20 20 20  |     10.r11     |
000000d0  52 4e 20 20 20 20 20 20  31 31 0a 72 31 32 20 20  |RN      11.r12  |
000000e0  20 20 20 52 4e 20 20 20  20 20 20 31 32 0a 72 31  |   RN      12.r1|
000000f0  33 20 20 20 20 20 52 4e  20 20 20 20 20 20 31 33  |3     RN      13|
00000100  0a 72 31 34 20 20 20 20  20 52 4e 20 20 20 20 20  |.r14     RN     |
00000110  20 31 34 0a 72 31 35 20  20 20 20 20 52 4e 20 20  | 14.r15     RN  |
00000120  20 20 20 20 31 35 0a 73  70 20 20 20 20 20 20 52  |    15.sp      R|
00000130  4e 20 20 20 20 20 20 72  31 33 0a 6c 72 20 20 20  |N      r13.lr   |
00000140  20 20 20 52 4e 20 20 20  20 20 20 72 31 34 0a 70  |   RN      r14.p|
00000150  63 20 20 20 20 20 20 52  4e 20 20 20 20 20 20 72  |c      RN      r|
00000160  31 35 0a 0a 53 65 72 76  69 63 65 5f 4d 6f 64 65  |15..Service_Mode|
00000170  45 78 74 65 6e 73 69 6f  6e 09 2a 09 26 35 30 0a  |Extension.*.&50.|
00000180  4d 6f 64 65 4e 75 6d 09  09 2a 09 39 36 09 09 09  |ModeNum..*.96...|
00000190  3b 57 69 6c 6c 20 75 73  65 20 6d 6f 64 65 20 6e  |;Will use mode n|
000001a0  75 6d 62 65 72 73 20 4d  6f 64 65 4e 75 6d 20 26  |umbers ModeNum &|
000001b0  20 4d 6f 64 65 4e 75 6d  2b 31 0a 09 09 09 09 09  | ModeNum+1......|
000001c0  09 3b 20 2d 20 66 6f 72  20 61 20 63 6f 75 70 6c  |.; - for a coupl|
000001d0  65 20 6f 66 20 34 62 70  70 20 67 61 6d 65 73 20  |e of 4bpp games |
000001e0  6d 6f 64 65 73 20 28 73  74 61 6e 64 61 72 64 20  |modes (standard |
000001f0  26 20 76 67 61 29 0a 09  09 47 42 4c 41 09 63 6f  |& vga)...GBLA.co|
00000200  6c 6f 75 72 73 0a 63 6f  6c 6f 75 72 73 09 09 53  |lours.colours..S|
00000210  45 54 41 09 31 36 0a 09  5b 20 63 6f 6c 6f 75 72  |ETA.16..[ colour|
00000220  73 3d 32 0a 6e 5f 62 61  73 65 6d 6f 64 65 09 2a  |s=2.n_basemode.*|
00000230  09 34 0a 76 5f 62 61 73  65 6d 6f 64 65 09 2a 09  |.4.v_basemode.*.|
00000240  32 35 0a 70 70 62 09 09  2a 09 38 09 09 09 3b 50  |25.ppb..*.8...;P|
00000250  69 78 65 6c 73 20 70 65  72 20 62 79 74 65 0a 09  |ixels per byte..|
00000260  5d 0a 09 5b 20 63 6f 6c  6f 75 72 73 3d 34 0a 6e  |]..[ colours=4.n|
00000270  5f 62 61 73 65 6d 6f 64  65 09 2a 09 31 0a 76 5f  |_basemode.*.1.v_|
00000280  62 61 73 65 6d 6f 64 65  09 2a 09 32 36 0a 70 70  |basemode.*.26.pp|
00000290  62 09 09 2a 09 34 0a 09  5d 0a 09 5b 20 63 6f 6c  |b..*.4..]..[ col|
000002a0  6f 75 72 73 3d 31 36 0a  6e 5f 62 61 73 65 6d 6f  |ours=16.n_basemo|
000002b0  64 65 09 2a 09 39 0a 76  5f 62 61 73 65 6d 6f 64  |de.*.9.v_basemod|
000002c0  65 09 2a 09 32 37 0a 70  70 62 09 09 2a 09 32 0a  |e.*.27.ppb..*.2.|
000002d0  09 5d 0a 09 5b 20 63 6f  6c 6f 75 72 73 3d 32 35  |.]..[ colours=25|
000002e0  36 0a 6e 5f 62 61 73 65  6d 6f 64 65 09 2a 09 31  |6.n_basemode.*.1|
000002f0  33 0a 76 5f 62 61 73 65  6d 6f 64 65 09 2a 09 32  |3.v_basemode.*.2|
00000300  38 0a 70 70 62 09 09 2a  09 31 0a 09 5d 0a 6b 09  |8.ppb..*.1..].k.|
00000310  2a 09 28 32 2a 70 70 62  2b 33 29 0a 0a 09 09 47  |*.(2*ppb+3)....G|
00000320  42 4c 41 09 6e 5f 6d 61  78 63 6f 6c 73 0a 09 09  |BLA.n_maxcols...|
00000330  47 42 4c 41 09 6e 5f 6d  61 78 72 6f 77 73 0a 09  |GBLA.n_maxrows..|
00000340  09 47 42 4c 41 09 6e 5f  68 70 69 78 0a 09 09 47  |.GBLA.n_hpix...G|
00000350  42 4c 41 09 6e 5f 76 70  69 78 0a 09 09 47 42 4c  |BLA.n_vpix...GBL|
00000360  41 09 6e 5f 68 63 79 63  6c 65 0a 09 09 47 42 4c  |A.n_hcycle...GBL|
00000370  41 09 6e 5f 76 63 79 63  6c 65 0a 09 09 47 42 4c  |A.n_vcycle...GBL|
00000380  41 09 6e 5f 68 73 79 6e  63 77 69 64 74 68 0a 09  |A.n_hsyncwidth..|
00000390  09 47 42 4c 41 09 6e 5f  76 73 79 6e 63 77 69 64  |.GBLA.n_vsyncwid|
000003a0  74 68 0a 09 09 47 42 4c  41 09 6e 5f 72 65 6d 61  |th...GBLA.n_rema|
000003b0  69 6e 68 0a 09 09 47 42  4c 41 09 6e 5f 68 62 6f  |inh...GBLA.n_hbo|
000003c0  72 64 73 74 61 72 74 0a  09 09 47 42 4c 41 09 6e  |rdstart...GBLA.n|
000003d0  5f 68 64 69 73 70 73 74  61 72 74 0a 09 09 47 42  |_hdispstart...GB|
000003e0  4c 41 09 6e 5f 68 64 69  73 70 65 6e 64 0a 09 09  |LA.n_hdispend...|
000003f0  47 42 4c 41 09 6e 5f 68  62 6f 72 64 65 6e 64 0a  |GBLA.n_hbordend.|
00000400  09 09 47 42 4c 41 09 6e  5f 72 65 6d 61 69 6e 76  |..GBLA.n_remainv|
00000410  0a 09 09 47 42 4c 41 09  6e 5f 76 62 6f 72 64 73  |...GBLA.n_vbords|
00000420  74 61 72 74 0a 09 09 47  42 4c 41 09 6e 5f 76 64  |tart...GBLA.n_vd|
00000430  69 73 70 73 74 61 72 74  0a 09 09 47 42 4c 41 09  |ispstart...GBLA.|
00000440  6e 5f 76 64 69 73 70 65  6e 64 0a 09 09 47 42 4c  |n_vdispend...GBL|
00000450  41 09 6e 5f 76 62 6f 72  64 65 6e 64 0a 09 09 47  |A.n_vbordend...G|
00000460  42 4c 41 09 6e 5f 73 63  72 65 65 6e 73 69 7a 65  |BLA.n_screensize|
00000470  0a 0a 6e 5f 6d 61 78 63  6f 6c 73 09 53 45 54 41  |..n_maxcols.SETA|
00000480  09 33 36 09 09 09 3b 54  6f 20 67 69 76 65 20 61  |.36...;To give a|
00000490  20 32 38 38 2a 32 30 30  20 70 69 78 65 6c 20 6d  | 288*200 pixel m|
000004a0  6f 64 65 0a 6e 5f 6d 61  78 72 6f 77 73 09 53 45  |ode.n_maxrows.SE|
000004b0  54 41 09 32 35 0a 6e 5f  6d 61 78 63 6f 6c 73 09  |TA.25.n_maxcols.|
000004c0  53 45 54 41 09 28 6e 5f  6d 61 78 63 6f 6c 73 2b  |SETA.(n_maxcols+|
000004d0  33 29 20 3a 41 4e 44 3a  20 3a 4e 4f 54 3a 33 09  |3) :AND: :NOT:3.|
000004e0  3b 72 6f 75 6e 64 20 75  70 20 74 6f 20 61 20 6d  |;round up to a m|
000004f0  75 6c 74 69 70 6c 65 20  6f 66 20 34 0a 6e 5f 68  |ultiple of 4.n_h|
00000500  70 69 78 09 09 53 45 54  41 09 38 2a 6e 5f 6d 61  |pix..SETA.8*n_ma|
00000510  78 63 6f 6c 73 0a 6e 5f  76 70 69 78 09 09 53 45  |xcols.n_vpix..SE|
00000520  54 41 09 38 2a 6e 5f 6d  61 78 72 6f 77 73 0a 0a  |TA.8*n_maxrows..|
00000530  6e 5f 68 63 79 63 6c 65  09 53 45 54 41 09 31 30  |n_hcycle.SETA.10|
00000540  32 34 09 09 09 3b 46 72  6f 6d 20 41 63 6f 72 6e  |24...;From Acorn|
00000550  20 55 73 65 72 20 4d 61  79 20 31 39 39 30 2c 20  | User May 1990, |
00000560  66 6f 72 20 36 34 30 2a  32 35 36 20 70 69 78 65  |for 640*256 pixe|
00000570  6c 20 6d 6f 64 65 73 0a  6e 5f 76 63 79 63 6c 65  |l modes.n_vcycle|
00000580  09 53 45 54 41 09 33 32  30 09 09 09 3b 28 66 6f  |.SETA.320...;(fo|
00000590  72 20 74 68 65 20 72 65  63 6f 72 64 29 0a 6e 5f  |r the record).n_|
000005a0  68 73 79 6e 63 77 69 64  74 68 09 53 45 54 41 09  |hsyncwidth.SETA.|
000005b0  35 38 0a 6e 5f 76 73 79  6e 63 77 69 64 74 68 09  |58.n_vsyncwidth.|
000005c0  53 45 54 41 09 30 0a 09  09 09 09 09 09 3b 46 6f  |SETA.0.......;Fo|
000005d0  6c 6c 6f 77 69 6e 67 20  62 79 20 65 78 70 65 72  |llowing by exper|
000005e0  69 6d 65 6e 74 61 74 69  6f 6e 20 26 20 63 6f 6d  |imentation & com|
000005f0  70 61 72 69 73 6f 6e 20  77 69 74 68 20 4d 4f 44  |parison with MOD|
00000600  45 20 31 33 0a 09 09 09  09 09 09 3b 64 69 73 70  |E 13.......;disp|
00000610  6c 61 79 20 6f 66 20 33  32 30 2a 32 35 36 2c 20  |lay of 320*256, |
00000620  74 6f 20 79 69 65 6c 64  20 32 38 38 2a 32 30 30  |to yield 288*200|
00000630  20 76 65 72 73 69 6f 6e  3a 0a 6e 5f 68 63 79 63  | version:.n_hcyc|
00000640  6c 65 09 53 45 54 41 09  35 31 32 0a 6e 5f 68 73  |le.SETA.512.n_hs|
00000650  79 6e 63 77 69 64 74 68  09 53 45 54 41 09 35 38  |yncwidth.SETA.58|
00000660  0a 6e 5f 76 63 79 63 6c  65 09 53 45 54 41 09 33  |.n_vcycle.SETA.3|
00000670  31 30 0a 6e 5f 76 73 79  6e 63 77 69 64 74 68 09  |10.n_vsyncwidth.|
00000680  53 45 54 41 09 30 0a 0a  6e 5f 72 65 6d 61 69 6e  |SETA.0..n_remain|
00000690  68 09 53 45 54 41 09 6e  5f 68 63 79 63 6c 65 2d  |h.SETA.n_hcycle-|
000006a0  6e 5f 68 70 69 78 0a 6e  5f 68 62 6f 72 64 73 74  |n_hpix.n_hbordst|
000006b0  61 72 74 09 53 45 54 41  09 31 36 2b 34 38 09 09  |art.SETA.16+48..|
000006c0  09 3b 34 38 20 28 61 73  20 66 6f 72 20 31 33 20  |.;48 (as for 13 |
000006d0  62 65 6c 6f 77 29 20 69  65 20 28 35 31 32 2d 33  |below) ie (512-3|
000006e0  32 30 29 2f 34 0a 6e 5f  68 64 69 73 70 73 74 61  |20)/4.n_hdispsta|
000006f0  72 74 09 53 45 54 41 09  6e 5f 68 62 6f 72 64 73  |rt.SETA.n_hbords|
00000700  74 61 72 74 2b 6e 5f 72  65 6d 61 69 6e 68 2f 32  |tart+n_remainh/2|
00000710  2d 34 38 0a 6e 5f 68 64  69 73 70 65 6e 64 09 53  |-48.n_hdispend.S|
00000720  45 54 41 09 6e 5f 68 64  69 73 70 73 74 61 72 74  |ETA.n_hdispstart|
00000730  2b 6e 5f 68 70 69 78 0a  6e 5f 68 62 6f 72 64 65  |+n_hpix.n_hborde|
00000740  6e 64 09 53 45 54 41 09  6e 5f 68 64 69 73 70 65  |nd.SETA.n_hdispe|
00000750  6e 64 2b 6e 5f 72 65 6d  61 69 6e 68 2f 32 2d 34  |nd+n_remainh/2-4|
00000760  38 0a 6e 5f 72 65 6d 61  69 6e 76 09 53 45 54 41  |8.n_remainv.SETA|
00000770  09 6e 5f 76 63 79 63 6c  65 2d 6e 5f 76 70 69 78  |.n_vcycle-n_vpix|
00000780  0a 6e 5f 76 62 6f 72 64  73 74 61 72 74 09 53 45  |.n_vbordstart.SE|
00000790  54 41 09 31 30 2b 31 33  09 09 09 3b 31 30 20 66  |TA.10+13...;10 f|
000007a0  72 6f 6d 20 41 55 20 66  6f 72 20 36 34 30 2a 32  |rom AU for 640*2|
000007b0  35 36 20 70 69 78 65 6c  73 20 6d 6f 64 65 73 2c  |56 pixels modes,|
000007c0  20 31 33 20 74 6f 20 67  69 76 65 20 73 61 6d 65  | 13 to give same|
000007d0  20 65 66 66 65 63 74 0a  6e 5f 76 64 69 73 70 73  | effect.n_vdisps|
000007e0  74 61 72 74 09 53 45 54  41 09 6e 5f 76 62 6f 72  |tart.SETA.n_vbor|
000007f0  64 73 74 61 72 74 2b 6e  5f 72 65 6d 61 69 6e 76  |dstart+n_remainv|
00000800  2f 32 2d 31 33 09 3b 61  73 20 66 6f 72 20 73 74  |/2-13.;as for st|
00000810  61 6e 64 61 72 64 20 33  32 30 2a 32 35 36 20 70  |andard 320*256 p|
00000820  69 78 65 6c 20 6d 6f 64  65 20 28 69 65 20 28 33  |ixel mode (ie (3|
00000830  31 30 2d 32 35 36 29 2f  34 29 0a 6e 5f 76 64 69  |10-256)/4).n_vdi|
00000840  73 70 65 6e 64 09 53 45  54 41 09 6e 5f 76 64 69  |spend.SETA.n_vdi|
00000850  73 70 73 74 61 72 74 2b  6e 5f 76 70 69 78 0a 6e  |spstart+n_vpix.n|
00000860  5f 76 62 6f 72 64 65 6e  64 09 53 45 54 41 09 6e  |_vbordend.SETA.n|
00000870  5f 76 64 69 73 70 65 6e  64 2b 6e 5f 72 65 6d 61  |_vdispend+n_rema|
00000880  69 6e 76 2f 32 2d 31 33  0a 6e 5f 73 63 72 65 65  |inv/2-13.n_scree|
00000890  6e 73 69 7a 65 09 53 45  54 41 09 28 28 6e 5f 76  |nsize.SETA.((n_v|
000008a0  70 69 78 2a 6e 5f 68 70  69 78 29 2f 70 70 62 20  |pix*n_hpix)/ppb |
000008b0  2b 20 26 66 66 66 29 20  3a 41 4e 44 3a 20 26 66  |+ &fff) :AND: &f|
000008c0  66 66 66 66 30 30 30 0a  0a 09 09 47 42 4c 41 09  |ffff000....GBLA.|
000008d0  76 5f 6d 61 78 63 6f 6c  73 0a 09 09 47 42 4c 41  |v_maxcols...GBLA|
000008e0  09 76 5f 6d 61 78 72 6f  77 73 0a 09 09 47 42 4c  |.v_maxrows...GBL|
000008f0  41 09 76 5f 68 70 69 78  0a 09 09 47 42 4c 41 09  |A.v_hpix...GBLA.|
00000900  76 5f 76 70 69 78 0a 09  09 47 42 4c 41 09 76 5f  |v_vpix...GBLA.v_|
00000910  68 63 79 63 6c 65 0a 09  09 47 42 4c 41 09 76 5f  |hcycle...GBLA.v_|
00000920  76 63 79 63 6c 65 0a 09  09 47 42 4c 41 09 76 5f  |vcycle...GBLA.v_|
00000930  68 73 79 6e 63 77 69 64  74 68 0a 09 09 47 42 4c  |hsyncwidth...GBL|
00000940  41 09 76 5f 76 73 79 6e  63 77 69 64 74 68 0a 09  |A.v_vsyncwidth..|
00000950  09 47 42 4c 41 09 76 5f  72 65 6d 61 69 6e 68 0a  |.GBLA.v_remainh.|
00000960  09 09 47 42 4c 41 09 76  5f 68 62 6f 72 64 73 74  |..GBLA.v_hbordst|
00000970  61 72 74 0a 09 09 47 42  4c 41 09 76 5f 68 64 69  |art...GBLA.v_hdi|
00000980  73 70 73 74 61 72 74 0a  09 09 47 42 4c 41 09 76  |spstart...GBLA.v|
00000990  5f 68 64 69 73 70 65 6e  64 0a 09 09 47 42 4c 41  |_hdispend...GBLA|
000009a0  09 76 5f 68 62 6f 72 64  65 6e 64 0a 09 09 47 42  |.v_hbordend...GB|
000009b0  4c 41 09 76 5f 72 65 6d  61 69 6e 76 0a 09 09 47  |LA.v_remainv...G|
000009c0  42 4c 41 09 76 5f 76 62  6f 72 64 73 74 61 72 74  |BLA.v_vbordstart|
000009d0  0a 09 09 47 42 4c 41 09  76 5f 76 64 69 73 70 73  |...GBLA.v_vdisps|
000009e0  74 61 72 74 0a 09 09 47  42 4c 41 09 76 5f 76 64  |tart...GBLA.v_vd|
000009f0  69 73 70 65 6e 64 0a 09  09 47 42 4c 41 09 76 5f  |ispend...GBLA.v_|
00000a00  76 62 6f 72 64 65 6e 64  0a 09 09 47 42 4c 41 09  |vbordend...GBLA.|
00000a10  76 5f 73 63 72 65 65 6e  73 69 7a 65 0a 0a 76 5f  |v_screensize..v_|
00000a20  6d 61 78 63 6f 6c 73 09  53 45 54 41 09 33 36 09  |maxcols.SETA.36.|
00000a30  09 09 3b 54 6f 20 67 69  76 65 20 61 20 32 38 38  |..;To give a 288|
00000a40  2a 34 30 30 20 70 69 78  65 6c 20 6d 6f 64 65 0a  |*400 pixel mode.|
00000a50  76 5f 6d 61 78 72 6f 77  73 09 53 45 54 41 09 35  |v_maxrows.SETA.5|
00000a60  30 0a 76 5f 6d 61 78 63  6f 6c 73 09 53 45 54 41  |0.v_maxcols.SETA|
00000a70  09 28 76 5f 6d 61 78 63  6f 6c 73 2b 33 29 20 3a  |.(v_maxcols+3) :|
00000a80  41 4e 44 3a 20 3a 4e 4f  54 3a 33 09 3b 72 6f 75  |AND: :NOT:3.;rou|
00000a90  6e 64 20 75 70 20 74 6f  20 61 20 6d 75 6c 74 69  |nd up to a multi|
00000aa0  70 6c 65 20 6f 66 20 34  0a 76 5f 68 70 69 78 09  |ple of 4.v_hpix.|
00000ab0  09 53 45 54 41 09 38 2a  76 5f 6d 61 78 63 6f 6c  |.SETA.8*v_maxcol|
00000ac0  73 0a 76 5f 76 70 69 78  09 09 53 45 54 41 09 38  |s.v_vpix..SETA.8|
00000ad0  2a 76 5f 6d 61 78 72 6f  77 73 0a 0a 76 5f 68 63  |*v_maxrows..v_hc|
00000ae0  79 63 6c 65 09 53 45 54  41 09 34 31 32 2b 38 09  |ycle.SETA.412+8.|
00000af0  09 09 3b 2b 38 20 6e 65  65 64 65 64 20 66 6f 72  |..;+8 needed for|
00000b00  20 73 74 61 62 69 6c 69  74 79 20 6f 6e 20 6d 79  | stability on my|
00000b10  20 73 79 73 74 65 6d 20  75 6e 64 65 72 20 73 6f  | system under so|
00000b20  6d 65 20 63 6f 6e 64 69  74 69 6f 6e 73 0a 76 5f  |me conditions.v_|
00000b30  68 73 79 6e 63 77 69 64  74 68 09 53 45 54 41 09  |hsyncwidth.SETA.|
00000b40  32 38 0a 76 5f 76 63 79  63 6c 65 09 53 45 54 41  |28.v_vcycle.SETA|
00000b50  09 35 32 34 0a 76 5f 76  73 79 6e 63 77 69 64 74  |.524.v_vsyncwidt|
00000b60  68 09 53 45 54 41 09 31  0a 0a 76 5f 72 65 6d 61  |h.SETA.1..v_rema|
00000b70  69 6e 68 09 53 45 54 41  09 76 5f 68 63 79 63 6c  |inh.SETA.v_hcycl|
00000b80  65 2d 76 5f 68 70 69 78  0a 76 5f 68 62 6f 72 64  |e-v_hpix.v_hbord|
00000b90  73 74 61 72 74 09 53 45  54 41 09 32 39 2b 76 5f  |start.SETA.29+v_|
00000ba0  72 65 6d 61 69 6e 68 2f  32 2d 34 09 3b 2d 34 20  |remainh/2-4.;-4 |
00000bb0  74 6f 20 63 6f 72 72 65  63 74 20 66 6f 72 20 2b  |to correct for +|
00000bc0  38 0a 76 5f 68 64 69 73  70 73 74 61 72 74 09 53  |8.v_hdispstart.S|
00000bd0  45 54 41 09 76 5f 68 62  6f 72 64 73 74 61 72 74  |ETA.v_hbordstart|
00000be0  2b 30 0a 76 5f 68 64 69  73 70 65 6e 64 09 53 45  |+0.v_hdispend.SE|
00000bf0  54 41 09 76 5f 68 64 69  73 70 73 74 61 72 74 2b  |TA.v_hdispstart+|
00000c00  76 5f 68 70 69 78 0a 76  5f 68 62 6f 72 64 65 6e  |v_hpix.v_hborden|
00000c10  64 09 53 45 54 41 09 76  5f 68 64 69 73 70 65 6e  |d.SETA.v_hdispen|
00000c20  64 2b 30 0a 76 5f 72 65  6d 61 69 6e 76 09 53 45  |d+0.v_remainv.SE|
00000c30  54 41 09 76 5f 76 63 79  63 6c 65 2d 76 5f 76 70  |TA.v_vcycle-v_vp|
00000c40  69 78 0a 76 5f 76 62 6f  72 64 73 74 61 72 74 09  |ix.v_vbordstart.|
00000c50  53 45 54 41 09 31 32 2b  76 5f 72 65 6d 61 69 6e  |SETA.12+v_remain|
00000c60  76 2f 32 0a 76 5f 76 64  69 73 70 73 74 61 72 74  |v/2.v_vdispstart|
00000c70  09 53 45 54 41 09 76 5f  76 62 6f 72 64 73 74 61  |.SETA.v_vbordsta|
00000c80  72 74 2b 30 0a 76 5f 76  64 69 73 70 65 6e 64 09  |rt+0.v_vdispend.|
00000c90  53 45 54 41 09 76 5f 76  64 69 73 70 73 74 61 72  |SETA.v_vdispstar|
00000ca0  74 2b 76 5f 76 70 69 78  0a 76 5f 76 62 6f 72 64  |t+v_vpix.v_vbord|
00000cb0  65 6e 64 09 53 45 54 41  09 76 5f 76 64 69 73 70  |end.SETA.v_vdisp|
00000cc0  65 6e 64 2b 30 0a 76 5f  73 63 72 65 65 6e 73 69  |end+0.v_screensi|
00000cd0  7a 65 09 53 45 54 41 09  28 28 76 5f 76 70 69 78  |ze.SETA.((v_vpix|
00000ce0  2a 76 5f 68 70 69 78 29  2f 70 70 62 20 2b 20 26  |*v_hpix)/ppb + &|
00000cf0  66 66 66 29 20 3a 41 4e  44 3a 20 26 66 66 66 66  |fff) :AND: &ffff|
00000d00  66 30 30 30 0a 0a 0a 09  5b 20 63 6f 6c 6f 75 72  |f000....[ colour|
00000d10  73 3d 32 35 36 0a 63 6f  6c 6f 75 72 73 09 09 53  |s=256.colours..S|
00000d20  45 54 41 09 36 34 0a 09  5d 0a 0a 62 61 73 65 09  |ETA.64..]..base.|
00000d30  44 43 44 09 30 0a 09 44  43 44 09 30 0a 09 44 43  |DCD.0..DCD.0..DC|
00000d40  44 09 30 0a 09 44 43 44  09 73 65 72 76 2d 62 61  |D.0..DCD.serv-ba|
00000d50  73 65 0a 09 44 43 44 09  74 69 74 6c 2d 62 61 73  |se..DCD.titl-bas|
00000d60  65 0a 09 44 43 44 09 68  65 6c 70 2d 62 61 73 65  |e..DCD.help-base|
00000d70  0a 09 44 43 44 09 30 0a  0a 74 69 74 6c 09 44 43  |..DCD.0..titl.DC|
00000d80  42 09 22 41 41 4d 6f 64  65 73 34 22 2c 20 30 0a  |B."AAModes4", 0.|
00000d90  09 41 4c 49 47 4e 0a 0a  68 65 6c 70 09 44 43 42  |.ALIGN..help.DCB|
00000da0  09 22 41 41 4d 6f 64 65  73 34 22 2c 39 2c 22 31  |."AAModes4",9,"1|
00000db0  2e 30 30 20 28 30 31 20  41 75 67 20 31 39 39 36  |.00 (01 Aug 1996|
00000dc0  29 22 2c 20 30 0a 0a 73  65 72 76 09 54 45 51 09  |)", 0..serv.TEQ.|
00000dd0  72 31 2c 20 23 53 65 72  76 69 63 65 5f 4d 6f 64  |r1, #Service_Mod|
00000de0  65 45 78 74 65 6e 73 69  6f 6e 0a 09 4d 4f 56 4e  |eExtension..MOVN|
00000df0  45 53 09 70 63 2c 20 6c  72 0a 09 54 45 51 09 72  |ES.pc, lr..TEQ.r|
00000e00  32 2c 20 23 4d 6f 64 65  4e 75 6d 0a 09 54 45 51  |2, #ModeNum..TEQ|
00000e10  4e 45 09 72 32 2c 20 23  4d 6f 64 65 4e 75 6d 2b  |NE.r2, #ModeNum+|
00000e20  31 0a 09 4d 4f 56 4e 45  53 09 70 63 2c 20 6c 72  |1..MOVNES.pc, lr|
00000e30  0a 09 54 45 51 09 72 32  2c 20 23 4d 6f 64 65 4e  |..TEQ.r2, #ModeN|
00000e40  75 6d 2b 31 0a 09 42 45  51 09 76 67 61 0a 09 54  |um+1..BEQ.vga..T|
00000e50  45 51 09 72 33 2c 20 23  30 0a 09 54 45 51 4e 45  |EQ.r3, #0..TEQNE|
00000e60  09 72 33 2c 20 23 31 0a  09 54 45 51 4e 45 09 72  |.r3, #1..TEQNE.r|
00000e70  33 2c 20 23 33 0a 09 54  45 51 4e 45 09 72 33 2c  |3, #3..TEQNE.r3,|
00000e80  20 23 34 0a 09 54 45 51  4e 45 09 72 33 2c 20 23  | #4..TEQNE.r3, #|
00000e90  35 0a 09 43 4d 4e 4e 45  09 72 33 2c 20 23 31 0a  |5..CMNNE.r3, #1.|
00000ea0  09 4d 4f 56 4e 45 53 09  70 63 2c 20 6c 72 0a 09  |.MOVNES.pc, lr..|
00000eb0  41 44 52 09 72 33 2c 20  6e 6f 72 6d 5f 76 69 64  |ADR.r3, norm_vid|
00000ec0  63 0a 09 41 44 52 09 72  34 2c 20 6e 6f 72 6d 5f  |c..ADR.r4, norm_|
00000ed0  77 73 0a 09 4d 4f 56 09  72 31 2c 20 23 30 0a 09  |ws..MOV.r1, #0..|
00000ee0  4d 4f 56 53 09 70 63 2c  20 6c 72 0a 76 67 61 09  |MOVS.pc, lr.vga.|
00000ef0  54 45 51 09 72 33 2c 20  23 31 0a 09 54 45 51 4e  |TEQ.r3, #1..TEQN|
00000f00  45 09 72 33 2c 20 23 33  0a 09 54 45 51 4e 45 09  |E.r3, #3..TEQNE.|
00000f10  72 33 2c 20 23 34 0a 09  54 45 51 4e 45 09 72 33  |r3, #4..TEQNE.r3|
00000f20  2c 20 23 35 0a 09 43 4d  4e 4e 45 09 72 33 2c 20  |, #5..CMNNE.r3, |
00000f30  23 31 0a 09 4d 4f 56 4e  45 53 09 70 63 2c 20 6c  |#1..MOVNES.pc, l|
00000f40  72 0a 09 41 44 52 09 72  33 2c 20 76 67 61 5f 76  |r..ADR.r3, vga_v|
00000f50  69 64 63 0a 09 41 44 52  09 72 34 2c 20 76 67 61  |idc..ADR.r4, vga|
00000f60  5f 77 73 0a 09 4d 4f 56  09 72 31 2c 20 23 30 0a  |_ws..MOV.r1, #0.|
00000f70  09 4d 4f 56 53 09 70 63  2c 20 6c 72 0a 0a 6e 6f  |.MOVS.pc, lr..no|
00000f80  72 6d 5f 76 69 64 63 0a  09 44 43 44 09 30 0a 09  |rm_vidc..DCD.0..|
00000f90  44 43 44 09 6e 5f 62 61  73 65 6d 6f 64 65 0a 09  |DCD.n_basemode..|
00000fa0  44 43 44 09 31 32 38 3c  3c 32 34 20 2b 20 28 6e  |DCD.128<<24 + (n|
00000fb0  5f 68 63 79 63 6c 65 2d  32 29 2f 32 3c 3c 31 34  |_hcycle-2)/2<<14|
00000fc0  0a 09 44 43 44 09 31 33  32 3c 3c 32 34 20 2b 20  |..DCD.132<<24 + |
00000fd0  28 6e 5f 68 73 79 6e 63  77 69 64 74 68 2d 32 29  |(n_hsyncwidth-2)|
00000fe0  2f 32 3c 3c 31 34 0a 09  44 43 44 09 31 33 36 3c  |/2<<14..DCD.136<|
00000ff0  3c 32 34 20 2b 20 28 6e  5f 68 62 6f 72 64 73 74  |<24 + (n_hbordst|
00001000  61 72 74 2d 31 29 2f 32  3c 3c 31 34 0a 09 44 43  |art-1)/2<<14..DC|
00001010  44 09 31 34 30 3c 3c 32  34 20 2b 20 28 6e 5f 68  |D.140<<24 + (n_h|
00001020  64 69 73 70 73 74 61 72  74 2d 6b 29 2f 32 3c 3c  |dispstart-k)/2<<|
00001030  31 34 0a 09 44 43 44 09  31 34 34 3c 3c 32 34 20  |14..DCD.144<<24 |
00001040  2b 20 28 6e 5f 68 64 69  73 70 65 6e 64 2d 6b 29  |+ (n_hdispend-k)|
00001050  2f 32 3c 3c 31 34 0a 09  44 43 44 09 31 34 38 3c  |/2<<14..DCD.148<|
00001060  3c 32 34 20 2b 20 28 6e  5f 68 62 6f 72 64 65 6e  |<24 + (n_hborden|
00001070  64 2d 31 29 2f 32 3c 3c  31 34 0a 09 44 43 44 09  |d-1)/2<<14..DCD.|
00001080  31 36 30 3c 3c 32 34 20  2b 20 6e 5f 76 63 79 63  |160<<24 + n_vcyc|
00001090  6c 65 3c 3c 31 34 0a 09  44 43 44 09 31 36 34 3c  |le<<14..DCD.164<|
000010a0  3c 32 34 20 2b 20 6e 5f  76 73 79 6e 63 77 69 64  |<24 + n_vsyncwid|
000010b0  74 68 3c 3c 31 34 0a 09  44 43 44 09 31 36 38 3c  |th<<14..DCD.168<|
000010c0  3c 32 34 20 2b 20 28 6e  5f 76 62 6f 72 64 73 74  |<24 + (n_vbordst|
000010d0  61 72 74 2d 31 29 3c 3c  31 34 0a 09 44 43 44 09  |art-1)<<14..DCD.|
000010e0  31 37 32 3c 3c 32 34 20  2b 20 28 6e 5f 76 64 69  |172<<24 + (n_vdi|
000010f0  73 70 73 74 61 72 74 2d  31 29 3c 3c 31 34 0a 09  |spstart-1)<<14..|
00001100  44 43 44 09 31 37 36 3c  3c 32 34 20 2b 20 28 6e  |DCD.176<<24 + (n|
00001110  5f 76 64 69 73 70 65 6e  64 2d 31 29 3c 3c 31 34  |_vdispend-1)<<14|
00001120  0a 09 44 43 44 09 31 38  30 3c 3c 32 34 20 2b 20  |..DCD.180<<24 + |
00001130  28 6e 5f 76 62 6f 72 64  65 6e 64 2d 31 29 3c 3c  |(n_vbordend-1)<<|
00001140  31 34 0a 09 44 43 44 09  2d 31 0a 6e 6f 72 6d 5f  |14..DCD.-1.norm_|
00001150  77 73 0a 09 44 43 44 09  30 0a 09 44 43 44 09 6e  |ws..DCD.0..DCD.n|
00001160  5f 62 61 73 65 6d 6f 64  65 0a 09 44 43 44 09 30  |_basemode..DCD.0|
00001170  2c 20 30 0a 09 44 43 44  09 31 2c 20 6e 5f 6d 61  |, 0..DCD.1, n_ma|
00001180  78 63 6f 6c 73 2d 31 0a  09 44 43 44 09 32 2c 20  |xcols-1..DCD.2, |
00001190  6e 5f 6d 61 78 72 6f 77  73 2d 31 0a 09 44 43 44  |n_maxrows-1..DCD|
000011a0  09 33 2c 20 63 6f 6c 6f  75 72 73 2d 31 0a 09 44  |.3, colours-1..D|
000011b0  43 44 09 34 2c 20 32 0a  09 44 43 44 09 35 2c 20  |CD.4, 2..DCD.5, |
000011c0  32 0a 09 44 43 44 09 36  2c 20 6e 5f 68 70 69 78  |2..DCD.6, n_hpix|
000011d0  2f 70 70 62 0a 09 44 43  44 09 37 2c 20 6e 5f 73  |/ppb..DCD.7, n_s|
000011e0  63 72 65 65 6e 73 69 7a  65 0a 09 44 43 44 09 31  |creensize..DCD.1|
000011f0  31 2c 20 6e 5f 68 70 69  78 2d 31 0a 09 44 43 44  |1, n_hpix-1..DCD|
00001200  09 31 32 2c 20 6e 5f 76  70 69 78 2d 31 0a 09 44  |.12, n_vpix-1..D|
00001210  43 44 09 2d 31 0a 0a 76  67 61 5f 76 69 64 63 0a  |CD.-1..vga_vidc.|
00001220  09 44 43 44 09 30 0a 09  44 43 44 09 76 5f 62 61  |.DCD.0..DCD.v_ba|
00001230  73 65 6d 6f 64 65 0a 09  44 43 44 09 31 32 38 3c  |semode..DCD.128<|
00001240  3c 32 34 20 2b 20 28 76  5f 68 63 79 63 6c 65 2d  |<24 + (v_hcycle-|
00001250  32 29 2f 32 3c 3c 31 34  0a 09 44 43 44 09 31 33  |2)/2<<14..DCD.13|
00001260  32 3c 3c 32 34 20 2b 20  28 76 5f 68 73 79 6e 63  |2<<24 + (v_hsync|
00001270  77 69 64 74 68 2d 32 29  2f 32 3c 3c 31 34 0a 09  |width-2)/2<<14..|
00001280  44 43 44 09 31 33 36 3c  3c 32 34 20 2b 20 28 76  |DCD.136<<24 + (v|
00001290  5f 68 62 6f 72 64 73 74  61 72 74 2d 31 29 2f 32  |_hbordstart-1)/2|
000012a0  3c 3c 31 34 0a 09 44 43  44 09 31 34 30 3c 3c 32  |<<14..DCD.140<<2|
000012b0  34 20 2b 20 28 76 5f 68  64 69 73 70 73 74 61 72  |4 + (v_hdispstar|
000012c0  74 2d 6b 29 2f 32 3c 3c  31 34 0a 09 44 43 44 09  |t-k)/2<<14..DCD.|
000012d0  31 34 34 3c 3c 32 34 20  2b 20 28 76 5f 68 64 69  |144<<24 + (v_hdi|
000012e0  73 70 65 6e 64 2d 6b 29  2f 32 3c 3c 31 34 0a 09  |spend-k)/2<<14..|
000012f0  44 43 44 09 31 34 38 3c  3c 32 34 20 2b 20 28 76  |DCD.148<<24 + (v|
00001300  5f 68 62 6f 72 64 65 6e  64 2d 31 29 2f 32 3c 3c  |_hbordend-1)/2<<|
00001310  31 34 0a 09 44 43 44 09  31 36 30 3c 3c 32 34 20  |14..DCD.160<<24 |
00001320  2b 20 76 5f 76 63 79 63  6c 65 3c 3c 31 34 0a 09  |+ v_vcycle<<14..|
00001330  44 43 44 09 31 36 34 3c  3c 32 34 20 2b 20 76 5f  |DCD.164<<24 + v_|
00001340  76 73 79 6e 63 77 69 64  74 68 3c 3c 31 34 0a 09  |vsyncwidth<<14..|
00001350  44 43 44 09 31 36 38 3c  3c 32 34 20 2b 20 28 76  |DCD.168<<24 + (v|
00001360  5f 76 62 6f 72 64 73 74  61 72 74 2d 31 29 3c 3c  |_vbordstart-1)<<|
00001370  31 34 0a 09 44 43 44 09  31 37 32 3c 3c 32 34 20  |14..DCD.172<<24 |
00001380  2b 20 28 76 5f 76 64 69  73 70 73 74 61 72 74 2d  |+ (v_vdispstart-|
00001390  31 29 3c 3c 31 34 0a 09  44 43 44 09 31 37 36 3c  |1)<<14..DCD.176<|
000013a0  3c 32 34 20 2b 20 28 76  5f 76 64 69 73 70 65 6e  |<24 + (v_vdispen|
000013b0  64 2d 31 29 3c 3c 31 34  0a 09 44 43 44 09 31 38  |d-1)<<14..DCD.18|
000013c0  30 3c 3c 32 34 20 2b 20  28 76 5f 76 62 6f 72 64  |0<<24 + (v_vbord|
000013d0  65 6e 64 2d 31 29 3c 3c  31 34 0a 09 44 43 44 09  |end-1)<<14..DCD.|
000013e0  31 35 36 3c 3c 32 34 20  2b 20 31 30 33 3c 3c 31  |156<<24 + 103<<1|
000013f0  34 09 09 09 3b 44 6f 6e  27 74 20 6b 6e 6f 77 20  |4...;Don't know |
00001400  77 68 61 74 20 74 68 65  73 65 20 74 77 6f 20 6c  |what these two l|
00001410  69 6e 65 73 20 73 65 74  20 2d 20 31 35 36 20 63  |ines set - 156 c|
00001420  61 73 65 0a 20 09 44 43  44 09 32 32 34 3c 3c 32  |ase. .DCD.224<<2|
00001430  34 20 2b 20 26 31 32 30  39 09 09 09 09 3b 63 6f  |4 + &1209....;co|
00001440  70 69 65 64 20 66 72 6f  6d 20 41 63 6f 72 6e 27  |pied from Acorn'|
00001450  73 20 47 61 6d 65 73 4d  6f 64 65 73 20 6d 6f 64  |s GamesModes mod|
00001460  75 6c 65 3b 0a 09 44 43  44 09 2d 31 09 09 09 09  |ule;..DCD.-1....|
00001470  09 3b 32 32 34 20 63 61  73 65 20 6d 6f 64 69 66  |.;224 case modif|
00001480  69 65 64 20 66 72 6f 6d  20 26 31 41 30 44 20 74  |ied from &1A0D t|
00001490  6f 20 26 31 32 30 39 20  74 6f 20 67 65 74 20 75  |o &1209 to get u|
000014a0  73 61 62 6c 65 0a 09 09  09 09 09 09 09 3b 64 69  |sable........;di|
000014b0  73 70 6c 61 79 2e 20 51  75 65 72 79 3a 20 73 6f  |splay. Query: so|
000014c0  6d 65 74 68 69 6e 67 20  74 6f 20 64 6f 20 77 69  |mething to do wi|
000014d0  74 68 20 72 65 66 72 65  73 68 20 72 61 74 65 3f  |th refresh rate?|
000014e0  0a 09 09 09 09 09 09 09  3b 6e 62 20 75 6e 73 75  |........;nb unsu|
000014f0  72 65 20 6f 66 20 73 69  67 6e 69 66 69 63 61 6e  |re of significan|
00001500  63 65 20 6f 66 20 68 69  67 68 20 62 69 74 73 2c  |ce of high bits,|
00001510  20 65 67 20 26 31 30 30  39 0a 09 09 09 09 09 09  | eg &1009.......|
00001520  09 3b 67 69 76 65 73 20  73 61 6d 65 20 72 65 73  |.;gives same res|
00001530  75 6c 74 20 28 77 68 69  6c 65 20 26 31 30 30 38  |ult (while &1008|
00001540  20 67 69 76 65 73 20 33  36 48 7a 20 64 69 73 70  | gives 36Hz disp|
00001550  6c 61 79 0a 09 09 09 09  09 09 09 3b 61 6e 64 20  |lay........;and |
00001560  26 31 30 30 41 20 67 69  76 65 73 20 37 32 48 7a  |&100A gives 72Hz|
00001570  20 64 69 73 70 6c 61 79  29 2e 0a 76 67 61 5f 77  | display)..vga_w|
00001580  73 0a 09 44 43 44 09 30  0a 09 44 43 44 09 76 5f  |s..DCD.0..DCD.v_|
00001590  62 61 73 65 6d 6f 64 65  0a 09 44 43 44 09 30 2c  |basemode..DCD.0,|
000015a0  20 30 0a 09 44 43 44 09  31 2c 20 76 5f 6d 61 78  | 0..DCD.1, v_max|
000015b0  63 6f 6c 73 2d 31 0a 09  44 43 44 09 32 2c 20 76  |cols-1..DCD.2, v|
000015c0  5f 6d 61 78 72 6f 77 73  2d 31 0a 09 44 43 44 09  |_maxrows-1..DCD.|
000015d0  33 2c 20 63 6f 6c 6f 75  72 73 2d 31 0a 09 44 43  |3, colours-1..DC|
000015e0  44 09 34 2c 20 32 0a 09  44 43 44 09 35 2c 20 31  |D.4, 2..DCD.5, 1|
000015f0  0a 09 44 43 44 09 36 2c  20 76 5f 68 70 69 78 2f  |..DCD.6, v_hpix/|
00001600  70 70 62 0a 09 44 43 44  09 37 2c 20 76 5f 73 63  |ppb..DCD.7, v_sc|
00001610  72 65 65 6e 73 69 7a 65  0a 09 44 43 44 09 31 31  |reensize..DCD.11|
00001620  2c 20 76 5f 68 70 69 78  2d 31 0a 09 44 43 44 09  |, v_hpix-1..DCD.|
00001630  31 32 2c 20 76 5f 76 70  69 78 2d 31 0a 09 44 43  |12, v_vpix-1..DC|
00001640  44 09 2d 31 09 09 09 09  09 3b 46 65 77 20 6e 6f  |D.-1.....;Few no|
00001650  74 65 73 20 6f 6e 20 6d  6f 64 65 20 64 65 66 69  |tes on mode defi|
00001660  6e 69 74 69 6f 6e 73 3a  0a 09 09 09 09 09 09 09  |nitions:........|
00001670  3b 68 63 79 63 6c 65 2f  76 63 79 63 6c 65 20 73  |;hcycle/vcycle s|
00001680  65 65 6d 73 20 74 6f 20  66 69 78 20 70 69 78 65  |eems to fix pixe|
00001690  6c 20 61 73 70 65 63 74  20 72 61 74 69 6f 2c 0a  |l aspect ratio,.|
000016a0  09 09 09 09 09 09 09 3b  68 63 79 63 6c 65 20 26  |.......;hcycle &|
000016b0  20 76 63 79 63 6c 65 20  28 70 6f 73 73 69 62 6c  | vcycle (possibl|
000016c0  65 20 74 68 65 20 70 72  6f 64 75 63 74 29 20 73  |e the product) s|
000016d0  65 65 6d 73 20 74 6f 20  66 69 78 0a 09 09 09 09  |eems to fix.....|
000016e0  09 09 09 3b 72 65 66 72  65 73 68 20 72 61 74 65  |...;refresh rate|
000016f0  2c 20 26 20 68 70 69 78  2a 76 70 69 78 20 73 65  |, & hpix*vpix se|
00001700  65 6d 73 20 74 6f 20 66  69 78 20 62 61 6e 64 77  |ems to fix bandw|
00001710  69 64 74 68 2e 0a 09 45  4e 44 0a                 |idth...END.|
0000171b