dos33fsprogs/ootw
Vince Weaver 2d31fc5f30 ootw: split out room edge detection
now we can jump on run to other rooms

still a bit buggy.  Also hit the NMOS 6502 jump table bug
2019-03-16 14:17:20 -04:00
..
intro_graphics ootw: intro: clean up the mess that accumulated when getting things to fit 2019-03-03 11:36:51 -05:00
ootw_graphics ootw: try to hook up jumping 2019-03-15 17:08:18 -04:00
compress_test.s ootw: more lz4 work 2019-02-25 21:01:06 -05:00
cutscene_beast.s
cutscene_slug.s
earthquake.s
FAQ ootw: update docs 2019-03-04 11:43:19 -05:00
gr_copy.s ootw: intro: split out gr_make_quake 2019-03-01 11:53:56 -05:00
gr_fast_clear.s ootw: intro: remove more extraneous code 2019-03-01 12:04:29 -05:00
gr_make_quake.s ootw: intro: split out gr_make_quake 2019-03-01 11:53:56 -05:00
gr_offsets.s
gr_overlay.s ootw: intro: initial DNA support 2019-02-17 13:37:24 -05:00
gr_pageflip.s
gr_plot.s ootw: intro, lots of elevator work 2019-02-05 23:46:31 -05:00
gr_putsprite_flipped.s ootw: intro: remove more extraneous code 2019-03-01 12:04:29 -05:00
gr_putsprite.s ootw: intro: remove more extraneous code 2019-03-01 12:04:29 -05:00
gr_unrle.s
gr_vlin.s ootw: intro, lots of elevator work 2019-02-05 23:46:31 -05:00
hardware.inc ootw: more lz4 work 2019-02-25 21:01:06 -05:00
hello.bas ootw: update loading basic program 2019-03-15 13:08:56 -04:00
intro_data_01.s ootw: intro: segments 1-3 going 2019-03-02 11:10:41 -05:00
intro_data_04.s ootw: intro: fine tuning a bit 2019-03-02 11:42:59 -05:00
intro_data_06.s ootw: intro: looking good, up to the storm 2019-03-02 12:07:03 -05:00
intro_data_08.s ootw: intro: success! 2019-03-02 13:37:17 -05:00
intro_data_09.s ootw: intro: success! 2019-03-02 13:37:17 -05:00
intro.s ootw: intro: allow continuing to game 2019-03-03 14:05:00 -05:00
keyboard.s ootw: split out room edge detection 2019-03-16 14:17:20 -04:00
loader.s ootw: intro: more squishing 2019-03-01 14:03:20 -05:00
lz4_decode.s ootw: intro: drastic times call for drastic measures 2019-03-02 10:02:46 -05:00
Makefile ootw: move collapsing in with the general physicist movement 2019-03-15 13:47:41 -04:00
ootw_c2_cage.s ootw: forgot about checkpoint2 2019-02-03 01:00:47 -05:00
ootw_c2.s ootw: change the physicist state machine to be more compact 2019-03-15 12:28:46 -04:00
ootw_cavern.s ootw: split out room edge detection 2019-03-16 14:17:20 -04:00
ootw_mesa.s ootw: split out room edge detection 2019-03-16 14:17:20 -04:00
ootw_pool.s ootw: split out room edge detection 2019-03-16 14:17:20 -04:00
ootw_rope.s ootw: split out room edge detection 2019-03-16 14:17:20 -04:00
ootw.dsk ootw: intro: allow continuing to game 2019-03-03 14:05:00 -05:00
ootw.s ootw: change the physicist state machine to be more compact 2019-03-15 12:28:46 -04:00
physicist.s ootw: split out room edge detection 2019-03-16 14:17:20 -04:00
random16.s
README ootw: intro: allow continuing to game 2019-03-03 14:05:00 -05:00
sluggy.s ootw: move collapsing in with the general physicist movement 2019-03-15 13:47:41 -04:00
sprites_beast.inc
sprites_ootw.inc
sprites_slugs.inc
text_print.s ootw: intro: a lot of accelerator text there 2019-02-18 12:18:46 -05:00
TODO ootw: move collapsing in with the general physicist movement 2019-03-15 13:47:41 -04:00
zp.inc ootw: move collapsing in with the general physicist movement 2019-03-15 13:47:41 -04:00

Another / Out-of-This World Demake for Apple II+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
	by Vince "Deater" Weaver (vince@deater.net) 
		http://www.deater.net/weave/vmwprod/ootw/
	Disk and LZ4 routines by qkumba

+ The game "Another World" was released in 1991.
	Written by Eric Chahi.
  It was eventually ported to many systems (I played it on IBM PC).

  It even got an Apple IIgs port (the IIgs is 16-bit with fancy
	graphics and sound).  However you couldn't play it on
	earlier Apple II systems... until now.

+ I was inspired to do this by this amazing PICO-8 version of:
	https://liquidream.itch.io/another-world-survival

  and thought the Apple II lo-res palette (15 colors, 40x48 graphics)
  might be just barely enough to do it justice.

==================
Game controls:
==================
  Use WASD keys to move, also arrow keys where available.
	This is tricky as the original Apple II keyboard is very
		simplistic so it's hard to get auto-repeat or multi keypress.
  Spacebar is action.

  During the intro, you can press R to make it repeat forever.

  Joystick support: none yet?


==================
Development notes:
==================

Memory map:
	00	zero page
	01	stack
	02	????
	03	nibble table/disk data
	04-07	GR page0
	08-0b	GR page1
	0c-0f	offscreen data  ($c00 = disk load buffer)
	10-13	offscreen data2
	14-16	loader
	17-89	program/compressed-data (30.25k)
	90-bf	currently decompressed level data (12k)
	c0-cf	I/O
	d0-ff	ROM


Memory squeeze!

	10,748 over	all graphics in
	10,734 over	remove extraneous blank bg image
	 8,658 over	re-arrange memory map, 42k avail now
	 8,562 over	move gr_make_quake out of common code
	 8,374 over	remove extraneous code (mostly put_sprite_flipped)
	 5,469 over     allow changing bg on fly in sequence
	 4,122 over	modify cyan frames to be on fly
	 2,749 over	do same for zappo routines
	 2,493 over	squish disk loader vars to page 3
	 2,165 over	horrible hack to auto-go to next image in sequence
	 2,114 over	move bg loading into seq
	 2,053 over	make elevator indicator a loop
	 1,347 over	use LZ4 instead of RLE

Gave up, see if we can compress in chunks and decompress, sort of like
my chiptune player does.


Let's take a 12k region of memory = $3000
	$C000 - $3000 = starting at $9000


ID1 =	1461		2143\
ID2 =   1759		2687|--- together in 01
ID3 =	1195		1879/
ID4 =   2514		8280\--- in 04
ID5 =	1947		3492/
ID6 =	2584		3610\ --- in 06
ID7 =   2834		3606/
ID8 =	3705		4918 | -- in 08
ID9 =	4494		5901\  -- in 09
ID10 =	3397		5558/
	=====          ======
	25890             12k