dos33fsprogs/games/riven_hgr/NOTES
2024-07-17 01:46:48 -04:00

186 lines
5.7 KiB
Plaintext

API for loading:
+ Disk based:
returns to ????? with LOCATION (no extra action needed)
LEVEL
DISK
set
the code looks up track/sector/length based on these,
changing disk if necessary
+ Prodos/HD based
+ proboothd boots disk
+ loads QLOAD to 1600
DDDD DDDT | TTTT TSSS
((disk+1)<<9)+(T<<3)+(S>>1)
((disk*512) + (T*8) + (S/2)
256k for each 140k disk, offset from there?
up to 128 disks
only one copy of qload/title
if level/disk changes, convert to filename
DISK00/FILE00
and load it
REMEMBER! QLOAD actually trashes 2 bytes above the top of the load
for most of this we re-write those bytes and it doesn't matter
but it does mean we can't load right up against $C000 as that's
I/O memory and we'll get weird corruption issues.
MEMORY MAP
$0000-$00FF = zero page
$0100-$01FF = stack
$0200-$02FF = disk stuff
$0300-$03ff = disk/interrupts
$0400-$07ff = lores graphics page1
$0800-$0bff = lores graphics page2
$800-$8ff = (qboot initial sector)
$1000-$11ff = qboot_stage2 (disk code)
$1200-$13ff = QLOAD tables (only need 1 page, but prodos load is 2)
could in theory load to $1000 instead when using HD
$1400-$15FF = HGR lookup tables
$1600-$1FFF = QLOAD = loader code (2k?)
$2000-$3FFF = HGR Page1, lores movie overlays
$4000-$BFFF = our code (up to 32k in theory)
$C000-$CFFF = I/O
$D000-$FFFF = ROM
image conversion
scummvm/vokoscreen capture
crop
scale to 140x201
convert
re-scale and crop to 280x192
(old) map to 12 colors and eyeball which?
(old) contrast/bright 57/3 (note: not always or even often)
dark areas, crank shadow removal to 80?
on some hard to define areas crank contrast to 50?
on atrus movie go to color levels and hit "auto" before iipix
final movie roto procedure:
scale to 40x50
crop to 40x48
add layer
paste overlay mask on top
rotoscope
copy to new image
convert to indexed apple II palette
scale to 80x48
save
Disk00 Map (disk has 35 tracks, each 4k in size)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
T 0 = Qboot
T 0.5 = TITLE 1618 bytes 8S = 0T8S (2048) 400B free
T 1 = QLOAD 2346 bytes 16S = 1T00S (4096) 2k free
T 2 = CYAN 32459 bytes = 7T15S (32512) 0k free
T 10 = ATRUS 32493 bytes = 7T15S (32512) 0k free
T 18 = CAPTURED 16696 bytes = 5T (20480) 4k free
T 26 = CHO 19839 bytes = 5T (20480) 0k free
T 31 = START 4107 bytes = 4T (16384) 12k free
Disk01 Map (disk has 35 tracks, each 4k in size)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
T 0 = Qboot
T 0.5 = TITLE 1618 bytes 8S = 0T8S (2048) 400B free
T 1 = QLOAD 1762 bytes 16S= 1T0S (4096) 2k free
T 2 = ARRIVAL bytes = 7T0S (28672) ?k free
T ? = ARRIVAL2 bytes = 7T0S (28672) ?k free
T ? = TELESCOPE bytes = 7T0S (28672) ?k free
Disk39 Map (disk has 35 tracks, each 4k in size)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
T 0 = Qboot
T 0.5 = TITLE 1618 bytes 8S = 0T8S (2048) 400B free
T 1 = QLOAD 1762 bytes 8S = 0T8S (2048) 300B free
T 2 = PROJECTOR 26736 bytes 112S = 7T0S (28672) 2k free
T 9 = OUTSIDE 29349 bytes 127S = 7T15S (32512) 3k free
T 17 = MAGSTEPS 11537 bytes 64S = 4T0S (16384) 5k free
T 21 = MAGLEV 13881 bytes 64S = 4T0S (16384) 3k free
T 25 = MOVIE_FLIP 7783 bytes 32S = 2T0S (8192) 500B free
T 27 = MOVIE_MAG 32177 bytes 128S = 7T15S (32512)300B free
Disk40 Map (disk has 35 tracks, each 4k in size)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
T 0 = Qboot
T 0.5 = TITLE 1618 bytes 8S = 0T8S (2048) 400B free
T 1 = QLOAD 1762 bytes 8S = 0T8S (2048) 300B free
T 2 = MAGLEV 30502 bytes = 8T11S (32768) 2k free
T 10 = OUTSIDE 18917 bytes = 5T (20480) 2k free
T 15 = TUNNEL 20983 bytes = 6T (24576) 4k free
T 21 = ORB 13710 bytes 54S= 3T6S (16384) 3k free
T 25 = MOVIE_FLIP 7680 bytes 32S = 2T0S (8192) 500B free
T 27 = MOVIE_MAG 32275 bytes 127S = 7T15S (32512)300B free
Disk41 Map (disk has 35 tracks, each 4k in size)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
T 0 = Qboot
T 0.5 = TITLE 1618 bytes 8S = 0T8S (2048) 400B free
T 1 = QLOAD 1762 bytes 8S = 0T8S (2048) 300B free
T 2 = TUNNEL 30669 bytes 127S= 8T (32512) 2k free
T 10 = STAIRS 25624 = 7T (28672) 3k free
T 17 = COVE 26422 = 7T (28672) 2k free
T 24 = STAIRS2 27139 = 7T (28672) 1k free
T 31 = MOVIE_COVE 8299 = 3T (12288) 4k free
Disk43 Map (disk has 35 tracks, each 4k in size)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
T 0 = Qboot
T 0.5 = TITLE 1618 bytes 8S = 0T8S (2048) 400B free
T 1 = QLOAD 1762 bytes 8S = 0T8S (2048) 300B free
T 2 = CART 23280 bytes = 7T0S (28672) 5k free
T 9 = BRIDGE 18609 bytes = 7T0S (28672) 10k free
T 16 = LOGGED 17570 bytes = 6T0S (24576) 7k free
T 22 = LOGGED2 17584 bytes = 5T0S (20480) 3k free
T 27 = MOVIE_CART32275 bytes 128S = 8T0S (32512)500B free
graphics notes:
in dark areas, use the shadow tool at 80 or so?
in bright areas, pumping contrast up to 30 - 40 can help?
disk40: 80/67 in tunnel
Disk notes:
disk0: intro movies
disk1: arrival and area around telescope
disk2: steps up and path to projector?
disk39: projector and maglev, including ride
disk40: jungle island maglev station, sound puzzle clue
also maglev flip and ride back to disk39
disk41: steps up to t-intersection?
X locations
disk42: to left, including sea animal move
disk43: to right, including cart ride
; it's 11 steps (22)
;