AdaGate -- OpenAL Version

Linux Build: AdaCore2021 on SL79 [mint is Ok, too].
--------------------------------------------------------
todo:
.) lockup happened during random keyboard presses (kids).
	?make keyboard key-handlers all mutually exclusive?
	Trying that; adagate-getkeyinputs.adb; done, but
	need to jump while moving forward or backward.
	Settled on extra "return" statements;

.) Track any future game freezes; see 20dec21.
.) ideas for another level?
	Must include DHD mod. alpha(adobe),lambda(lumber),
	beta(brick),gamma(granite)?
.) ideas for augmentation of existing levels? Music?
.) checkout newest freesound/music_loops/*
--------------------------------------------------------


24dec21:
.) added few "return" statements near beginning of
	keyboard event handler.

22dec21:
.) rearranged directories; moved stuff out of root
	and into ./src/.

20dec21:
.) During regression testing, I experienced one
	screen-freeze while swimming in the lagoon, 
	with sound still playing, and game still running,
	that forced a reboot. I have never seen
	this before, or since. Just this once!?

.) final, minor adjustments to kawoosh.wav to
	lengthen sound to fit animation.

19dec21:
.) REdiscovered how awesome my ocean is. I tried
	using dFdx in aoiwater.fs to calculate ocean
	normals and the results were terrible...jerky & 
	crude. So use exact mathematical calculations for
	normals whenever available.

15dec21:
.) elliminated final three cc-by-nc licensed wav files,
	and 2 other untraceable WAV files.
	Now all are cc0 or cc3 and are compatible with gplv3.

4dec21:
.) Delivered to F.S.F. latest version from S.F.


#######################################################
25nov21: uploaded v7.3.2 to all
#######################################################

31oct21:
.) updated all glfw libs to newer static; & scripts.

#######################################################
23oct21: uploaded v7.3.1 to all
#######################################################

23oct21:
.) removed data/jacobsLadder.wav
.) reduced/fixed dark-metal*.wav, sports_card*.wav, beach00.wav
.) deleted data/myplay.

22oct21:
.) updated 64-bit glext.lib
.) removed copy from libs/w64ming

20oct21:
.) Now buildable under GNAT & all versions of AdaCore Ada.

9oct21:
.) updated to latest libglfw, from avent.
.) updated to latest glfw3.dll from avent.

#######################################################
07nov20: uploaded v7.3.0 to all
#######################################################

5nov20:
.) recompile all 3

5nov20:
note: opensuse required soflink to libopenal.so
note: mint exe runs fine on sl78 !
.) installed new OpenAL sound system with dynamic sizing.
	seems to work fine, but beware of certain sounds
	that are not "clean" WAV files. I had to replace
	soccer-kick.wav, already.
.) if tasking error occurs at begining of use,
	there is probably something fishy about
	the WAV file that was being read.
.) fixed task termination error that only showed
	itself on OSX. Now strictly wait for each
	task to terminate before calling oal_hpp.cleanup2().

28oct20:
.) elliminated "_hpp" from all filenames and code,
	to match newer sound codes.

24oct20:
.) updated sndloop.adb to include a short interrupt-interval
	that SHOULD be noticeable during swim? It works but I
	don't notice any diff! (sndloop::aplay --period-time=100_000)
	A smaller quit-lag MAY be noticeable with long-duration 
	wav loop files.

14oct20:
.) Revised sounds: lavapool & eventHorizon.
.)	Lavapool is bubbling faster;

#######################################################
17sep20: uploaded v7.2.0 to all
#######################################################

18sep20:
.) added windows launcher "adagate.bat".

02jul20:
.) updated all glfw libs to v3.3.2.


18jun20:
.) changed glfw3.ads binding to assure intended sizes
	of unsigned integer types are explicitly declared.
	.) test on OSX, Windows:  Good!


#######################################################
24may20: uploaded v7.1.9 to all
#######################################################

18may20:
.) replaced lev3 music with sports_card.
	... closer match to lev2.
	
4may20:
.) removed wood ceiling (ceil2) from level 2 because
	it was redundant.
.) now allow ceiling portals in level 2.
.) Now, paradigm is simply that portals can be put
	onto any solid wall, floor or ceiling surface.

1may20:
.) restored dutch-trance @ 1/2 volume (lev3).

#######################################################
30apr20: uploaded v7.1.8 to all
#######################################################

29apr29:
.) moved get-sizes to right before main loop;


#######################################################
29apr20: uploaded v7.1.8 to all
#######################################################

28apr20:
.) found & fixed failure to call glViewPort(0,0,Fwid,Fhit)
.) simplified init code;
.) works perfectly now;

#######################################################
23apr20: uploaded v7.1.7 to all
#######################################################

16apr20:
.) Now perform a redhatKin test before calling glfw-fullscreen
	workaround, if necessary.
	Tests perfectly.

16apr20:
.) changed screens to include desktop frames [FTTB] so
	that rpm-based linux systems can use largest screensize
	possible. This is due to a problem with GLFW.


#######################################################
15apr20: uploaded v7.1.6 to all
#######################################################


11apr20:
.) updated glfw to v3.3.2 [built on sl77];
	But, it did NOT fix sl77 problem showing 
	less than fullscreen.

10apr20:
.) tried perlin noise lava pool...
	Ok, but current is still much better!
.) fixed exe freeze when debugging w/ AG -3 0.
	Fixed, as of 10apr20 (reset levdebug:=0 after use)


8apr20:
.) NOTE1: sl77 (on NUC) FAILS to detect proper [full-] 
	screen size (uses 981 rather than 1080).
	...but mint on NUC is fine!
.) NOTE2: a bit of jitter in lava room on NUC.


7apr20:
.) lava pool update:  
	.) color from [improved] rgate...
	.) !great! effect now where color dictates 
		wave height above "mean-level";

4apr20:
.) to avoid static noise with ALSA version, I had 
	to use chunksize=64, which, in-turn, increased 
	stopLoop latency! So, adagate_gnux is not bad;
	but Aplay version is simpler and just as good, 
	or better.

3apr20:
.) improved look of pool waves level 2.

2apr20:
.) Combined ./xag/ into ./agate/. 
	See lcmpx.sh => adagate_gnux (shows ALSA methods)
.) lcmpd.sh => adagate_gnu (uses shell to "aplay")
	with sound code that is curiously simple & robust.
.) 2 methods are similar in function, BUT now (3apr)
	experiencing noisy static with Alsa version...
	do NOT deliver its executable until resolved...
	Update 4apr: not too bad?

31mar20:
.) modified *.wav files so they should be played @ near
	100% volume.  This makes my linux sounds much
	closer to the proper volume.

#######################################################
30mar20: uploaded v7.1.5 to all
#######################################################

29mar20:
.) updated linux code to assure proper retrieval of PID
	for later killing.

27mar20:
.) decided to keep sound system as-is. Transient
	sound latency is negligible in this app.
	And this sound is very robust.

27mar20:
.) improved soundloop code...pretty nice now;
	Now using ada.real_time for time-related
	variables. Elliminated glfw, gl. Reduced
	margin to 0.1 sec after "dur", added time 
	regulation in sndloop with delay-until.
.) FIXED Problem discovered with previous upload:
	Returning to island, camdist is way to large,
	and event 1st person, the avatar is
	moving & inwater (because of treadwater motion).

26mar20:
.) improved DHD position.

21mar20:
.) fixed portal beams: now call drawbeams
	even when showcross is false;
.) simplified portal beam time code.

24feb20:
.) added quietsplash for treadwater
	and updated sound logic to match.
.) changed & improved swimLoop.

4feb20:
.) note1:  aplay uses ALSA, which does NOT exist on OSX
.) NOTE2:  AdaSound (aplay) does NOT have volume control!

#######################################################
27jan20: uploaded v7.1.3 to all
#######################################################

27jan20:
.) might have fixed occasional tasking error...
	kill is now blocking;
.) better error msgs from tasks.


#######################################################
26jan20: uploaded v7.1.2 to all
#######################################################


26jan20:
.) improved task code.
	Seems Ok on NUC (but debug=true);

21jan20:
.) checked volume using aplay if *.wav
	and all seemed Ok as is.
.) trimmed a few large *.wav files.

#######################################################
21jan20: uploaded v7.1.1 to all
#######################################################

21jan20:
.) fully commented linux sound tasking code.
.) modified each sound loop task to use a unique 
	identifier for its PID-file.
.) Now using delay in sndloop.adb of 0.25sec (was 0.5)
	before trying to read the PID file.
.) Fixed kbub by doubling its length from 5.00 to 10.00 sec.
	HOWEVER, suseptibility to certain numbers seems
	to suggest a remaining weakness in my sound task coding.
	There are other sounds that are short:
	splash=2.88sec, chatter=5.01sec. ???

#######################################################
20jan20: uploaded v7.1.0 to all
#######################################################

20jan20:
.) Built new sound system for linux that avoids the
	SFML libraries for greatly enhanced linux portability.
	This involves Ada tasking to implement sound loops.
.) IF I elliminate "kbub", all else now seems to work!!!
.)	A Key adjustment was necessary that adds a 0.2 second
	buffer to the loop duration input to ensure loop ends
	BEFORE allowing the Ada Task to try to replay it.  
	See adautils/sndloop.adb.
.) Tested on Redhat(SL77) & debian-based(Mint).


####################################################
12jan20 delivery v7.0.4 all
####################################################

12jan20:
.) fixed broken fireball.
.) created mrectobj with only 6 sides but the number of
	texture-image-cycles per direction is user defined.

11jan20:
.) gu:ypos (jump) : minduration changed from 0.1 to 0.01.
	This elliminates small hops while on ledges.
.) Lev2:  replaced grunge with wood.
	Adjusted water waves & hues.

11jan20:
.) updated to glfw331 adabinding.
.) new inclusions of libm, libz in linux libs are good
	on NUC!  This is likely to enhance portability.


10jan20:
.) updated to glfw v3.3.1


9jan20:
.) robustified reading of settings.txt
	Even handles ff=dos.

9jan20:
.) debug parms 0 -1  force lodpi on OSX,
	debug parms 0 -2  allow hidpi on OSX,
	debug parms 0  0 => default lodpi.
	See, also: dbParms.txt.


####################################################
09jan20 delivery v7.0.3 all
####################################################


8jan20:
.) removed code that doubled mouse-slew-rate @ hiDpi.
.) added explanation of Dpi options in "osx-setup.txt".
.) added ~/data/settings.txt file to allow users to adjust
	forward/backward speed, and slew speed of:
	.) keys
	.) mouse
	.) GamePad
	.) Joystick

7jan20:
.) In "osx-setup.txt" I documented how to disable HighDpi
	on Mac OSX.  Mentioned this in README.md, too.


####################################################
07jan20 delivery v7.0.2 all
####################################################

6jan20:
.) Fixed timing problem preventing jumps;
.) Fixed drawing order problem relating to
	kawhoosh versus other dungeon objects;
.) Fixed timing issue controlling the
	rendering of entry kawhoosh.
.) removed ~/libs/w64ming/libz*810.a;  
	replaced with ~/binw64/zlib1.dll
.) adjusted script wcmp64a.bat
.) Now, ALL use zlib1.dll, rather than libz*.a


31dec19:
.) Final revisions to windows build scripts to prefer
	the use of DLLs or libs in the ./binwxx/ runtime
	directory over [now hidden] libs in ./libs/wxxming/.
	Also now using most recent w64 libz* file.

29dec19:
.) revised OSX,W32 build scripts to build and use
	libsnd4ada.a, rather than use snd4ada.o
.) put others into ./auxScripts/


####################################################
25dec19 delivery v7.0.1  git, SF
####################################################

24dec19:
.) finalized joystik code.
	Works fine!


####################################################
24dec19 delivery v7.0.0  git, SF
####################################################

24dec19:
.) perfected handling of boldtime,foldtime, oldTimeKb.
.) repaired Fwid,Fhit.

23dec19:
.) initial conversion to glfw3
.) having trouble with getkey...
	deltat versus keydlay
	?looks same as avent?

##########################################################

19dec19:
.) modified 5 files in sdlada


19dec19:
.) installed freshly built Ada binding to SDL2
	v2.0.10 that is minimal and functions well.

####################################################
17dec19 delivery v6.5.4  git, Indi, SF, Itch, Jolt #
####################################################

16dec19:
.) updated SDL2 to v2.0.10
	Simpler build script for Windows!

13dec19:
.) I now draw SG that exits into each dungeon,
	...its kawhoosh for 3 seconds, ...
	its frame for 5 seconds. Thusly, tying up
	loose ends in the storyline.

01dec19:
.) Single CmdLine Arg "1" now signals HiDpi desired.

30nov19:
.) removed sdl_button_x1/x2,right from sdl binding;
.) added explanatory comments sdl_mouse_h.ads


####################################################
30nov19 delivery v6.5.3  git, Indi, SF, Itch, Jolt #
####################################################

29nov19:
.) improved coding of nearness to island stargate
	so that we now use function atStarGate() that
	is similar to atExit() for the dungeons.  Given
	the "rounded" KO zones of the stargate framework,
	it "funnels" you toward the center. Nice.
.) tried funneling pedestals near dungeon SGs
	but it's not practical to use radial-avoidance
	logic as we do with convex island trees...FAIL.

28nov19:
.) reduced scale of several *.png files.

26nov19:
.) improved gameutils::atexit() to be more realistic
	about how close the avatar needs to get to the
	stargate before triggering it.  I now allow a bit
	more distance from center in a direction parallel
	to the wall of the stargate, than in the distance
	away from the wall.  (I recently had reduced the 
	later to allow the avatar to become enveloped by 
	the event horizon.)  All 4+1 levels tested Ok.

####################################################
26nov19 delivery v6.5.2  git, Indi, SF, Itch, Jolt #
####################################################

26nov19:
.) Upgraded linux mint and discovered library problems.
.) Repaired a library problem with GNU/Linux build that limited portability.

24nov19:
.) cleaned up center of "stargate_off.png" and
	"stargate_half_off.png".
	...see on island and in dungeon receptacles, portals.

####################################################
24nov19 delivery v6.5.1  git, Indi, SF, Itch, Jolt #
####################################################

23nov19:
.) Always set @ HiDpi now since new lighter shaders
	allow reasonable smoothness on Mac/OSX.
.) switched out swiss-cheese local wormhole
	for simpler spiral that runs well on
	Intel NUC (as well as Mac/OSX).
	Note, perfectWorm runs well on NUC!

22nov19:
.) now using awesome & lightweight molten4.fs
	for level#3 lava pool (I like it better).
.) reduced prepwormhole radius from 0.11 to 0.08
	to clear island shrubs.
.) modified perfectWorm to run
	smoothly on Intel NUC (and Mac/OSX)
	using single codebase...BUT...
	actually runs pretty well on Mac @ HiDpi,
	now.  I only detect a slight jitter during
	the wormhole to lev3 (not back).  Thus,
	I should consider always allowing HiDpi.


####################################################
22nov19 delivery v6.5.0  git, Indi, SF, Itch, Jolt #
####################################################

21nov19:
.) Level 3 unplayable on OSX? Even @ lowRes mode.
	FOUND WHY:  lavasurf is new rectsurf(400).
	Fixed!

20nov19:
.) improved starfield ceiling in level 4.
.) improved bubbling.ogg sound for lavapool.
.) improved stargate-wormhole visual & sound
	to take 8 seconds.  Uses "perfectWorm.fs".
	Destination sound loops now wait until arrival.
.) local portals unchanged.
.) improved music level3 (less annoying).


####################################################
19nov19 delivery v6.4.9  git, Indi, SF, Itch, Jolt #
####################################################

19nov19:
.) fixed broken level 5.

30oct19:
.) fixed adagate-first_prep.adb lines with
	myint_io.get(linestr

24jun19:
.) updated to new SDL2-v209 binding;  seems to compile;
	Check runtime.

21jun19:
.) cleaned up binding sdlada;  elliminated sdl_version_h.ads.

20jun19:
.) updated SDL2 libs to version 2.0.9
	...testing validity & build process...DONE


####################################################
15jun19 delivery v6.4.8  git, Indi, SF, Itch, Jolt #
####################################################

14jun19:
.) adapted avatarolay.ad? (from avent) to properly
	render hats/turbans (Indiana Jones, Pi Patel, etc.)

13jun19:
.) reverted to myswiss2.fs for local (portal) wormhole.

29apr19:
.) moved root ada codes into ./src/
.) modified gaterad (gaterad1 + gaterad3) to
	allow closer 3rd person approach to island stargate.
.) modified atexit() to allow closer approach
	to dungeon stargates.
.) lowered xboxpos(2) so kawhoosh is closer to floor;

7mar19:
.) Use "chatlimit" to limit the tedious monkey
	chatter to within 20 seconds of first approach.
.) removed unneeded glew32.dll from 64-bit Windows
	executable directory.

25jan19:
.) editted stargate pillars KO zone;
	See diampil:=0.15 in gametypes.ads.
.) making Monkey smarter;  now goes around trees Ok;
.) fixed animalObj.vs so monkey legs pivot @ body;
	walk frequency, height adjusted.

24jan19:
.) gameutils.adb::1980:  might need this line?
.) monkey business;  See gameutils.adb::1810
	updateMonkey...tried to make him look in direction
	of travel rather than at avatar.  When in lagoon,
	he seems to pace back & forth along water's edge.


####################################################
24jan19 delivery v6.4.7  git, Indi, SF, Itch, Jolt #
####################################################

23jan19:
.) perfected lavapool, stargate & kawhoosh;
	elliminated circular waves.
.) discovered that the nicest way to add time variability
	to coherent noise is to use perp*time*spd, where 
	perp is the vector normal to surface.

22jan19:
.) Created spherex.ad? (modified ellpisoidobj) to handle
	kawhoosh.  Still had 1 anomaly but it could be
	discarded in the frag shader.
	Great looking stargates now!
.) I prefer Perlin over Simplex noise.

21jan19:
.) Revised rectxfineobj.adb to elliminate elements...
	but exactly same artifacts.
	New plan:  revise colors to better hide problems....
	See kwhoosh2.fs

19jan19:
.) restored old kwhoosh BUT I see an anomalous
	graphical artifact in dungeons [but NOT beach!]
	?Wall-texture? NO! (exists w/o wall!)
	[it WAS present in previous delivery!]
	Exists using only circular waves (w/o perlin).
	Hidden with no noise, but still there (discard).

18jan19:
.) more reworking of lavapool;
	Index=400.  Check burden on MacBook.

16jan19:
.) All new lavapool...using noise + radial waves, with
	coloring scheme of magmaBall. See:
	.) lavapool.vs, lavapool.fs;
	.) gametypes.ads::907 [rectsurfobj(200)];
	.) 2 new uniforms @ setup-textures.adb::285 
		[ieye15,samp15];


15jan19:
.) adjustments in lavapool;
	.) slower waves;
	.) spiralling twist (volcano6.fs::104)


14jan19:
.) further adjustments in aoiwater...
	.) waves now increase amplitude in shallows;
	.) Return to 3-term series for sin waves (from 2);
	.) foam adjustment;

13jan19:
.) adjust aoiwater.[fv]s (per rgate):
	.) bigger, slower waves (circular & rectangular);
	.) revised deep ocean foam;  
		totally controlled by "dprod";
	.) tweaked opacity in shallows;

####################################################
27dec18 delivery v6.4.6  git, Indi, SF, Itch, Jolt #
####################################################


26dec18:
.) found/fixed nasty control error...in dungeons,
	I had been ignoring most keys if there was a 
	joystick or gamepad connected.
.) set game-controller [Dpad]btn 2 (south) to jump.
	Now, move forward with Lhat/Ljoy while
	pressing RtHand btn 2 [DPad-down] to jump forward
	by default.
.) Corrected default_settings.txt.
.) Begin to deliver 7z files;


22dec18:
.) added nice glass partition to level 4...
	but in the process I had to change the drawing
	order.  

21dec18:
.) removed Amelia from 1st skybox;
.) added to 5th + text: "Amelia was here."


19dec18:
.) see [eXperimental] ../xagate/ for attempts to 
	allow fireball pass thru portal.
.) But here, fireball does NOT pass thru portal.  
	Discouraged attempts by disallowing portals
	@ either end of magmaBall trajectory
	...along z=2, y=-ymax+fballrad, @ X=+/-xmax...
	Need abs(ztgt-2)>fballrad*2
	(fballrad=0.5) so now in brick dungeon we
	require abs(ztgt-2)>1
	See gameutils-shoot* (zpre1/zpre2).


####################################################
19dec18 delivery v6.4.5  git, Indi, SF, Itch, Jolt #
####################################################

18dec18:
.) disabled [distracting] gun within exit zone;
	See gameutils-shoot* (showCross must be true),
	gameutils-updategamestate (showCross:=false);
	Tests: Ok, even on turtle.

18dec18: FACTOIDs:
	1) camera damping is sufficient for default
		standoff, but not when zoomed out.
	2) Why does zoom-in, first zoom out, & viceVersa?
	Ans:  to keep camera movements smooth, there
		is a damping delay that must be obeyed...
		the undamped alternative is very ugly!  
		See gameutils-updatecamera.adb
		(search zooming).

17dec18:
.) made z-key [return to default zoom] incremental
	like the other zoom keys n & f;

10dec18:
.) reenabled OSX trackpad zoom with slight mod.
	Seems Ok on seven, so should be Ok here.

#####################################################
10dec18 delivery v6.4.4  git, Indi, SF, Itchi, Jolt #
#####################################################

8dec18:
.) added zoom keys z,n,f;
.) now see camera zoom while stopped;

7dec18:
.)	[SDL-]MouseWheel zoom disabled for OSX
	...due to poor performance via touchpad.



#####################################################
7dec18 delivery v6.4.3   git, Indi, SF, Itchi, Jolt #
#####################################################


6dec18:
.) Improved linux compile script...if libsnd4ada.so
	is used, then we do NOT need libsndio*, libasound*.
.) Now draw portal gun near screen bottom.
	Note that the best way to show gun in 3rd person
	mode is to build & display a 3D gun object.
	But, I made leftward "{", straight "|", 
	rightward "}" pointing gun icons.
	See adagate-drawroom.adb::438


#####################################################
5dec18 delivery v6.4.2   git, Indi, SF, Itchi, Jolt #
#####################################################


5dec18:
.) now make different metallic sound when pushing ZPMs
	on beach.
.) Fixed sound error where stargate bubbling should
	but did not stop when ZPM if rolled off receptacle.
.) improved look of lagoon/ocean waves;
	Doubled radial refinement to 200 cuts.


1dec18:
.) replaced bubbling.wav with bubbling.ogg,
	which is much smaller.  Might need to adjust
	volume (was=99, now=70) of lava pool in brick room3.
.) minor adjustments volcano.vs, volcano6.fs

27nov18:
.) uploaded to gameJolt;
.) announced on GOL=GamingOnLinux;

23aug18:
.) reduced size of metallic png files;
.) removed history in READMEag.md prior to 2018.
	Also removed Vasquez name from thin binding...
	I have updated & tested a new minimal version 
	that binds to SDL2 v2.0.8 (no: image,ttf,mixer).


######################################################
23aug18 REdelivery v6.4.1   gitHub,IndieDB,SF,ItchIO #
######################################################

22aug18:
.) removed some platform-specific files from sdl208ada.
.) need to retest on osx, windows...good.

20aug18:
.) upgraded my sdl2 adabinding to version 2.0.8;
.) updated builds for all 4 platforms to sdl208;

17aug18:
.) Cleaned up & tested both win32 & win64 do use
	sdl207 so that my adabinding is perfectly valid.
.) Insured OSX, linux both use sdl207.

17aug18:
.) It seems Ok to link against sdl v208, yet compile
	against sdl v207, on linux.

17aug18:
.) more carefully handle sfml250;
.) updated Windows libs/DLLS to SDL208...
	but need to update adabindings sdl207ada/
	Perhaps interface is similar and my 
	existing binding will still work?
.) linux (lcmpds.sh) seems to work using
	the old binding.



5aug18:
.) removed head overlay for avatarobj;
.) adjusted animalObj.vs to correct monkey;
.) changed loadPng parms from mirror to clamp for
	monkey and duke.
.) improved Duke's treadWater;

3aug18:
.) corrected errors in avatarobj.adb & avatarfine.adb
	and coordinated with fixes to X-scaling in 
	avatarobj.vs and avataro.vs
.) achieved basic strawman version of rounded avatar with
	nice proportions using avatarfine.adb & avataro.fs;
.) due to user opinion...NOT USING rounded avatars;

2aug18:
.) rounded out the avatar!
	Still using Minecraft characters but with
	refined gridding and modified vertex shader
	to elliptify the rectangles.
	Working...see avataro.vs

28jul18:
.) completely purged SFML242 !

28jul18:
.) updated win32 to sfml250...works perfectly!
	.) changed DLLs in binw32/
	.) updated build scripts
	.) added directory libs/w32ming/ with
		appropriate new *.a files;
		making libs/win/ defunct.

######################################################
28jul18 REdelivery v6.4.0   gitHub,IndieDB,SF,ItchIO #
######################################################

28jul18:
.) upgraded linux version to sfml250;

27jul18:
.) removed id from osx script


####################################################
19jul18 delivery v6.4.0   gitHub,IndieDB,SF,ItchIO #
####################################################


17jul18:
.) added Fog to metallic ZPM;
.) Finalized nice kawhoosh;
	See gameutils-setup_textures.adb::35
.) improved lagoon transparency;
.) added lagoon edge foam;
.) REPAIRED hcylobj.adb  Added back to level 2.
.) Note that AV cylobj.adb is distinct (vertical)
	and has no problems.

####################################################
17jul18 delivery v6.3.9   gitHub,IndieDB,SF,ItchIO #
####################################################

17jul18:
.) fixed island skybox problem;
.) elliminated level 2 graphical anomaly
	due to faulty cylobj.adb

16jul18:
.) commented out drawroom::236 to prevent lev2 error;
.) commented out drawisland::1001 to progress thru levels;
.) added rusty ZPM

####################################################
10jul18 delivery v6.3.8   gitHub,IndieDB,SF,ItchIO #
####################################################


10jul18:
.) still using Botcazou's ZLib fix, which I believe
	to be equivalent to Anisimkov's corrections.
.) moved island receptacle far away and
	displace ZPM upon each return to island.  
	Thus gamer must walk around the island to reset it.
.) properly set dbug:=True when commandline parms
	so indicate.

9jul18:
.) Now, game returns to island thru stargate...but
	made critical changes to game boolean flags
	dbug, skipfly, etc;  Tests...seems Ok.
.) kawhoosh is now opaque, blue-gray, finer mesh;
	Need to test on OSX, Windows...both Ok!


####################################################
7jul18 delivery v6.3.7   gitHub,IndieDB,SF,ItchIO #
####################################################

6jul18:
.) kawhoosh is now using a gray-metallic palette.

5jul18:
.) found,fixed DOS fmt error 
	.) reading resume, puzzle, settings files.

1jul18:
.) added LOCAL libm,libz shared linux libs
	and removed dependence on my system's versions;

####################################################
30jun18 delivery v6.3.6   gitHub,IndieDB,SF,ItchIO #
####################################################


29jun18:
.) Added win64 build;
.) Updated AdaPngLib, AdaZLib;
.) finished prep for another release;


14jun18 OSX changes:
.) upgraded to MacBook to HighSierra;
.) upgraded to AdaCore2018;
.) Reminder:
	need to use Apple-Intrinsic [LLVM clang Xcode]
	g++ compiler and NOT the one from AdaCore, 
	whether 2017 or 2018, to compile snd4ada.cpp
	Now, all seems to work, whether newest 
	SFML-v2.5.0 or not, and whether or not
	we use static or shared libs.
.) Tested & works perfectly!


10jun18:
.) found/fixed cause of AC2018 abort @ -O3;
	It involved an erroneous statement, that
	I have now corrected.
.) sent letter of apology to Arno;
.) gnuAda 730 now works @ -O3 too!
.) changed default compiler to AC2018;


9jun18:
.) changed default compilation to use shared SDL
	libraries for much smaller exe. [lcmpd.sh]
	Still using AC2017.

7jun18:  New Compilers...2 alternatives:
.) tried AdaCore 2018
.) tried GnuAda [v7.3.0]
.) a fleeting problem using static SDL libs
	has disappeared?


4jun18:
.) added KO-avoidance to monkey.


####################################################
1jun18 delivery v6.3.5   gitHub,IndieDB,SF,ItchIO  #
####################################################


28may18:
.) Added monkey chatter sound when nearby;

25may18:
.) refined island sand gridding to prevent monkey
	from getting buried, or flying.  Adjusted height
	of other objects to match this higher fidelity.
.) greatly improved translucency of ocean shallows;
.) added lonely island monkey;
.) 2 alternative monkey behaviors:
	.) fixed-orbit circular pacing around island;
		works fine but disabled;  [KOs not an issue]
	.) approaching avatar if possible [KOs an issue];
	See animalObj.vs, gameutils.adb::updateMonkey
.) NOTE:  there is not yet any attempt to have
	monkey avoid KOs.


24may18:
.) created nice brnMonkey.png;
.) created animalObj.vs [+avatarobj.fs] to display it.

5may18:
.) added spherical component to outer tree branch 
	motion for palms.  Looks even better.
	[see otex.fs (saved previous as otex0.fs)]
	And, the top center branches in a palm move
	more vigorously.

1may18:
.) improved annusurfobj.adb::draw by adding
	proper statement needed to allow transparency.


####################################################
1may18 delivery v6.3.4   gitHub,IndieDB,SF,ItchIO  #
####################################################


30apr18:
.) decided that the order of drawing stargate vs trees
	is not critical;  See end of adagate-drawisland.adb.
.) added FatPalm near sandweed;
.) had some trouble restoring the correct drawing order,
	...seaweed vs cockpit vs fatPalm vs sandweed vs ocean
	...I think it's Ok now.  EG.:
	.) underwater items [fish,seaweed,cpit] must be drawn 
		before ocean;
	.) fatpalm before nearby sandweed;

28apr18:
.) created w3trees with 6 wings, 3planes & alternating
	texture directions...looks great!  [w3treeobj.ad?]
	And simple to use for other indie developers.
.) added fragshader micro distortions to tree branches
	that simulates flutter.
.) adjusted beach tree sway parms [smaller].
	See windtree.vs, otex.fs.


27apr18:
.) Important Observation:  micro-distortions introduced
	using a frag shader does NOT require finer vertex
	resolution to get a similar effect!  Thus it is a
	cheap alternative.


26apr18:
.) tested, but disabled, riven-style micro-distortions
	in level#1 pool.
.) added slight vertical motion to outer tree
	branches in shader windtree.vs

24apr18:
.) added grasspatch on sandy hilltop.
.) more extensive restructuring using many
	separate procs...easier to navigate!
.) made bamboo more opaque;  Nicer!
.) restructured drawisland (was island_ftn),
	now draw each type of item separately
	to cleanup code for easier understanding.


19apr18:
.) improved naming of variables representing
	uniform IDs, as per AV, to prevent misuse.
	Numbering of like uniform names is a better 
	way to distinguish variables with similar 
	intent than using distinct names.
.) cleaned up setup/release of program IDs
	and uniform IDs.

18apr18:
.) elliminated all reference to "MV" in shaders.


####################################################
14apr18 delivery v6.3.3   gitHub,IndieDB,SF,ItchIO #
####################################################


14apr18:
.) downloaded/using nice new lava pool (volcano6.fs)

13apr18:
.) I believe I fixed PiP, 3rd person, shot by
	correction & use of aim-direction;
	Test more.
.) elliminated glerror 1282 due to [improper] reuse 
	of the same uniform ID (variable-name).

12apr18:
.) found/fixed some fog-related errors in the
	shaders due to misuse of "eyeSpacePos".
.) added fog effects to lean-to, shark;
	fixed fog effects to trees, island, coconuts;
.) lowered skybox fog angle;
.) Other-worldly DHD, stargate : still no fog effects.


10apr18:
.) further clarifications & simplifications
	in kawoosh shaders & turbulence ftn.
.) made like improvements in fireball shaders too
	that clearly explain usage of perlin noise.
.) improved both explosion.png and blurgrad.png;

9apr18:
.) No longer deactivate portals due to "Xit"
	flag.  See gu-ugs:227,229; gu:188,219(@lft,@rit ftns);
.) proportionally magnified outward noise 
	during extension;  See kwhoosh.vs.
.) improved, clarified kawoosh shaders;
.) now using smoothed blurgrad.png;

8apr18:
.) using new blue gradient map (blugrad.png)
	and tweaked parms.

7apr18:
.) made 3rd [best] utube HD video kwush3;
.) shortened time & length of kawoosh;
.) better match to new sound.

6apr18:
.) made 2nd Utube video kawoosh2 in HD
.) found & used improved kawhoosh sound:
	4sec_Kawoosh.ogg
.) slight refinement of kawhoosh parms
	see kwhoosh.vs

####################################################
5apr18 delivery v6.3.2   gitHub,IndieDB,SF,ItchIO #
####################################################


5apr18:
.) added circular ripple to kawoosh.

4apr18:
.) found kwush sound and bubbling sound loop;
.) replaced tardis with stone doorway/stargate

3apr18:
.) Created island kawhoosh...awesome! 
	.) no longer need SG interior;
	.) setup draw flags;
	.) island return now thru stargate.
.) Using Red/Green shaded portals in interiors
	to distinguish between portals and stargates.

23mar18:
.) Succeeded in getting the GPR-scripts to work
	in all 3 OS's.

####################################################
23mar18 REdelivery v6.3.1   gitHub,IndieDB,SF #
####################################################

22mar18:
.) replaced normals in cross product with predefined
	vectors -p1n, +p2n (adagate.adb::580)
.) drastic simplification in logic defining solang.

##################################################
22mar18 delivery v6.3.1   gitHub,itch,IndieDB,SF #
##################################################


20mar18:
.) Note that floor portals are not exittable!
	Currently, exit direction vector[=up] has no 
	horizontal component at exit so it's
	very difficult to move away before
	falling back in.

20mar18:
.) generalized codes to allow floor portals.
	Pretty good!
.) carefully disallowed floor portals in
	.) pool
	.) sokoban puzzle area
.) made ceiling portals enterable by jumping;


19mar18:
.) enabled ceiling portals in brick room;
.) even PiP shots working;
.) fully generalized portal geometry.


15mar18:
.) tried, failed to get gprbuild to work.

14mar18:
.) drastic restructure...exists 2 versions of 
	isblank, is_blank ... I hope I did not foul
	them up; they are both in gameutils.adb now.
.) split out from gameutils as separate:
	.) updateferry
	.) shoot*
	.) readpuz*
	.) island_ftn
	.) island_textur*
	.) updategamestate, ...
.) split out from adagate as separate:
	.) first_prep
	.) getuserinputs
	.) initsdl
	.) preplevel
	.) drawroom

10mar18:
.) Improved names in matutils;
.) moved many files into ./adautils/
.) changed compile scripts accordingly


##################################################
10mar18 delivery v6.3.0   gitHub,itch,IndieDB,SF #
##################################################

9mar18:
.) discovered/fixed a serious error in planets;
	I failed to reinitialize position @ beginning
	of island_ftn.
.) Commandline parameters used for debugging
	now fully override any values in the resume
	file, as if no resume file were present.

8mar18:
.) REDEFINED event_horizon from 0.25 to 0.5 !
	This improves wormhole approach.
	Check that this is Ok.  Also modified texhalf.fs
	so that PRAD=2.5 (was 0.85).  There are many
	others in *.fs but perhaps not as important
	to enlarge PRAD.
.) un-inverted all png files per AV...
	.) change ada codes accordingly per AV:
		.) pictobj, pngloader, utex.
	.) pngloader clarified normal versus cubemap texture;
	.) fixed duke...his legs were shorter than arms!
		See avatar.vs.

2mar18:
.) fixed utex.adb so sans3h.png no longer
	needs to be inverted.

25feb18:
.) removed redundancy in utex.adb


##################################################
24feb18 delivery v6.2.9   gitHub,itch,IndieDB,SF #
##################################################


23feb18:
.) added link from ~/Resources/ to ./data/.
.) created indirod.png
.) updated avatarobj.ad? to match AV.
.) updated avatarobj.fs to match AV (transparency).
.) repaired planetary Xforms to use inertial coords.
	Now, there is no change of planet pos with a 
	change of island viewpoint.
.) adjusted positions as needed to avoid clouds.

22feb18:
.) Repaired ellipsoid.ad? by making private vars
	(oldx,oldy,oldz) belong to each instance.
.) Likewise, repaired mroomobj (gap).
.) Now showing mars in first & last
	background, and jupiter in others.

21feb18:
.) inserted Mars into island sky
	with spin axis tilted.
	It is obviously closer than skybox clouds!
	Awesome against night stars!
.) now, always show it;
.) in night sky, have it orbiting;
.) elsewhere choose a fixed position in the sky
	with no clouds.  (0,0,15) is Ok, if necessary.


1feb18:
.) symmetry corrections to avatarobj.adb (per AV)
	as well as support for hats, turbins, etc.
.) refinements in gameutils.adb


##################################################
27jan18 delivery v6.2.8   gitHub,itch,IndieDB,SF #
##################################################


27jan18:
.) key improvements during sokobaning
	See gameutils.adb::updateCamera
.) 2 essential fixes when 1st-person
	@ top of updateGameState.
.) reworked woodroom to closer match reflective
	cubemap.


26jan18:
.) moved level#4 ledge to other side.
.) gamepad tested, works Ok!
.) changed call to slew within mouse_move
	to slewToAv.  Also in 3 other places,
	2 in gameutils, 1 in adagate.  Difference
	here is SUBTLE...but now NO camera movement
	at all when stopped and turning avatar.
.) changed direction=0 action in updateCamera...
	when NOT sokobaning, we still call
	slewToAv (very subtle)
.) to see changes, search "26jan".
.) near perfect!



##################################################
25jan18 delivery v6.2.7   gitHub,itch,IndieDB,SF #
##################################################

25jan18:
.) corrected *shoot* and ftn aim() so portal guns
	hit intended wall target.

25jan18:
.) reset showcross to false @ top main event loop.
.) now switch to 1st person neardhd...
	search dhdnear1.
.) bad angles when moving backwards interior.
	Switched to using slewToAv rather than 
	slewToAvLook...awesome.  perfect.
.) moved granite room ledge to other side.


24jan18:
.) corrected erroneous usage of "vertang" in 3rd
	person mode, since then it is used to represent
	the camera vertical angle.  In 3rd person we
	may assume a zero avatar vertical look angle.
.) corrected erroneous redefinition of "sokobaning".
.) In order to clarify function, renamed setCamAngH
	to slewToAvLook.
.) Added proc slewToAv, with different goal.
.) adjusted sokobaning params for nicer puzzling.
.) adjusted other interior movement logic for
	further improvement of avatar/camera motions.


##################################################
22jan18 delivery v6.2.6   gitHub,itch,IndieDB,SF #
##################################################

22jan18:
.) interior now shows crosshairs only when
	portalEnabled=true.

21jan18:
.) added mousewheel adjustability of camera 
	distance behind [and slightly above] avatar.
	It is working fine, but because of the delayed
	connection between avatar movement and camera 
	movement, it is not immediately obvious.


20jan18:
.) slight adjustment to depth @which swimming begins
	and walking ends.
.) corrections to adagate.adb, gameutils.adb to use
	(xcam,zcam) rather than (xme,zme) when in 3rd person 
	mode in various uniforms that help define ocean 
	transparency, and portal-exterior-discard and 
	sort-order for seaweed and trees.
.) much enhanced KO-avoidance elliminates jitter.
.) now, gradual sokoban-standoff.
.) separated vAdj function from updateCamera;


18jan18:
.) new swimming motion (avatarobj.vs)
.) adjusted ioffset, voffset, boffset (gt.ads)
	and other camera parms for much nicer
	function.  Xferred to AV.
.) discovered that smooth & quick, rather than 
	instantaneous, camera slew is possible even
	when moving backward.

17jan18:
.) fixed PIP shooting vertang using a nonzero
	voffset.  See gu:xvertang (shoot*)

17jan18:
.) @ gu3.adb


16jan18:
.) elliminated jerkiness on beach by disabling
	test of KOs between *me and *cam !
.) made beach KOs circular...MUCH better.
.) halved mouse sensitivity.
.) took greater care in choosing when to make
	vertical angle adjustments...deltaYcam is NOT
	sufficient on hilly beach...introduces jitter.
	Also, vAdj is now disabled if the camera
	standoff distance is too small.
.) perfected camera;  now slews slowly
	while stopped during sokobaning,
	otherwise no slew while stopped.
.) now raise each hand of avatar
	when shooting portal guns.
.) added fclamp procedure.


##################################################
15jan18 delivery v6.2.5   gitHub,itch,IndieDB,SF #
##################################################

15jan18:
.) Aimpoint precision FIXED when shooting thru portal in 3rd person.

14jan18:
.) adjusted color in lavaroom for much more drama.
.) Big improvment in camera work by adjusting
	vertical angle during fall/jump.
	See:  updategamestate, updateCamera
.) reduced to zero the camera offset when
	nearDHD to allow nice picking.

13jan18:
.) painstaking rework of camera handling, including
	vertical camera angle adjustment during "jumps" 
	and horizontal camera angle control with fewer 
	disconcerting changes. (gameutils.adb::5639)
.) scrutinized tests of yme versus KOs to be uniform.
	Note that "aheight" is intended to represent 
	Average-body-height = EyePos, yet in some places
	aheight/2.0 is used versus KOs, particularly
	low ones.

12jan18:
.) Facilitated debug mode...now allow cmd-line-parms
	dod in {-4..+5} where -4=>jumpToGranite,
	-3=>jumpToBrick, etc.  As before, 0=>skipFly,
	1..5 = DOD.
.) Tried gamma on unlit scenes...Bad!
	Leave as is.

##################################################
12jan18 delivery v6.2.4   gitHub,itch,IndieDB,SF #
##################################################

12jan18:
.) found/fixed coloration errors in drawroom where I 
	.) erroneously turned on lighting in all dungeons
		after drawing sokWalls.
	.) erroneously corrected for gamma in all rooms,
		lit or not, but that messed up coloration.
.) check color of all unlit scenes (other than lavaroom)
	since we now use gamma correction in texobjShine.fs
.) check if we SHOULD use gamma correction elsewhere...NO

11jan18:
.) reduced standoff from exit cube from 5.0 to 2.5;
.) increased ambient coefficient in texhalf.fs
	so lavaroom looks better on MacBook.  Later
	found MacBook needed increased contrast to
	look as great as Windows.
.) turned lighting OFF when drawing ZPM receptors.
	Far better!

10jan18:
.) fixed texhalf.fs so receptacles turn on when 
	they should in lavaroom;  and so that tardis
	does NOT have nearly transparent artifacts @ top.
.) added BlinnPhong lighting in lava room;
	fracMspc=0.01 => negligible specular.
.) ADDED GAMMA CORRECTION WHETHER LIGHTED OR NOT
	(see texhalf.fs & turt.fs)
.) avatar now pushes ZPMs with arms...cute.
.) much improved Camera handling.
.) Fixed turtle logic.


9jan18:
.) fireball now emits [moving] diffuse color;
	quadAtt adjusted so not too noticeable
	on far wall.
.) cleaned up code per AV.
.) adjusted ambient, quadratic attenuation
	in lava room for nicer dramatic effect.
	It also elliminates non-ambient light
	against the far wall, which is eclipsed
	by the partition.

2jan18:
.) considered updating lighting but there are
	only 2 shaders (texhalf.fs, turt.fs) used in
	level 3 (brick lava room) with minimal needs
	for "directional" light emanating from lava;
	and making them more rigorous is error-prone.
	They are working Ok, and doing the job.

25dec17:
.) mamba improvements;
.) ztubeobj.adb simplifications.

21dec17:
.) all Fog now proportional to sqrt(distance/dmax)
	both interior & exterior...looks best.

20dec17:
.) undertook improvements to shaders so as not to
	mix the meanings of gamelevel versus foglevel.
	Now, shaders have more uniform treatment of
	fog-level and fog-color;  and the code now
	deliberately sets most fog settings, although
	the default uniform values are used occasionally.
.) regression tested completely...Ok.

19dec17:
.) noted that fog shaders are highly esoteric and too
	specialized.  I would prefer a more general setup
	with separate uniforms for fogcolor, foglevel.
	That is very difficult to do without 
	introducing	errors.


##################################################
19dec17 delivery v6.2.3   gitHub,itch,IndieDB,SF #
##################################################


18dec17:
.) added comment for windows users to neglect unzip errors.

14dec17:
.) added commandline control of beach scene...
	0 J => skip flyover, use bkgd J 
	J==(0:sunny,1:cloudy,2:icy,3:eve,4:night)
.) trying island fog too (only bkd=1,2), 
	but for it to look real, I would need to also handle:
	.) palms/grasses DONE
	.) rocks/lean2  DONE
	.) stargate (not necessary...it's extraterrestial!)

13dec17:
.) added FOG to beach a) skybox;  b) ocean
	Now must set foglev near gameutils.adb::4433
	Currently:  sunny(0), cloudy(1), icysky(1), evening(0), night(0)
	NEEDS TESTING...very nice.

27nov17:
.) upgraded to sdl207x
.) double check compilation/running on Windows. DONE
.) rebuilt on OSX too.


##################################################
18nov17 delivery v6.2.2   gitHub,itch,IndieDB,SF #
##################################################

18nov17:
.) reverted to sdl-v2.0.3 due to problems on OSX
	exhibited by OTHER apps when using v207.
	Note that AdaGate never exhibited that problem.

15nov17:
.) Found ocean(100,100) was excellent for Mac HiDpi
	...remove jitter that occured @ ocean(200,200).
.) Maybe I should do likewise for Windows, Linux?  DONE
.) Also reduced grid (180->120) for reflective pool.
.) Also replaced lev4 darkwater with lightweight fragshader.
.) Fixed problem trying to shoot thru portals when avatar is ON.

14nov17:
.) setup Windows DLLs, libs to use sdl-v2.0.7
.) likewise for OSX, gnu.
.) Now works fine on all 3 platforms.

.) saw hole in the ocean only on some hardware;
.) so I modified, simplified wave ftns in the
	new shaders aoi.vs, aoi.fs;


13nov17:
.) adabindings/NUsdlada now contains a MINIMAL
	207 interface that can still be used by AdaGate.
	Also, I have painstakingly scrutinized
	all the calls versus sdl v207 to insure
	compatibility.  Works well under gnu,osx.


13nov17:
.) compile fails using adabindings/sdl207ada/
.) compiled&run using adabindings/sdl203ada/
	...YET it is using v207 of libSDL2-207.a  !!! ???
.) also compiled&run using adabindings/NUsdlada/
	...again with wrong 207 lib.



##################################################
11nov17 delivery v6.2.0   gitHub,itch,IndieDB,SF #
##################################################


9nov17:
.) now using ada.directories.exists(fname)


8nov17:
.) ERROR:  discovered I distributed bad gnu libs
	libSDL* in previous upload !!!

4nov17:
.) !!! now compiles/runs on MSwin !!!
	...just need some dlls collocated w/exe.
	Also needed glext.lib (sourceforge glext-win32),
	and glfw, sfml libs for win32;
	and libz.a for win32.


19oct17:
.) elliminated freetype.framework, libjpeg.a


7jul17:
.) updated OSX libs to use SFML v2.4.2;
.) added script ocmpd.sh to utilize dylib's
	rather than statics;

6jul17:
.) now, either the m-key or F1-key toggles between 1st/3rd person.

4jul17:
.) modified *.sh to avoid large exe in ~/obj/

2jul17 (mini):
.) added OGL version query to startup messages.
.) added OGL profile queries too.


##################################################
29jun17 delivery v6.1.4   gitHub,itch,IndieDB,SF #
##################################################

28jun17:
.) updated linux scripts to use AdaCore 2017 as well as
	updated SFML 2.4.2 libs.
.) revised lcmp16.sh script for linux;
.) put older linux libs into ~/libs/gnu16

27jun17 (zeto):
.) revised island height formula to be constant beyond r=10
.) adjusted ocean opacity according to angle of incidence
	between L.O.S. and water normal vector (aoi.fs)
.) enabled user control of beach time, for testing, by 
	using command line parms:  0 x  where x=0..4 

26jun17: (mini)
.) corrected/improved formula for conformal mapping
	within rectfineobj.adb so that rock Npole maps to
	the texture @ (u,v)=(0.5,0.5).

25jun17: (mini)
.) rocky2.vs replaces more complex rocky.vs for...
	skull, armbone, freckleJar, starfish, crab.
	Dimensions adjusted accordingly.

24jun17: (zeto - rock.vs)
.) simplified vertex mapping of rectfineobj.adb from unit cube 
	to unit sphere (see rock.vs).
.) greatly improved the texture mapping on rocks and
	coconuts.  I now warp the top/bottom hemispheres 
	conformally	onto a circle;  but must now use an
	even number of partitions to look correct @ equator.

18jun17:
.) installed AdaCore 2017 Ada compiler.  On Linux, this 
	required	rebuilding SFML libs from source using the g++
	compiler provided with the new Ada version.
.) the old SFML libs work for Ada 2016 and earlier,
	and are kept under ~/libs/gnu/gnat16SFML241/*
.) my old compiler is under /usr/gnat16/bin/*
.) Note that AdaCore 2017 works on OS-X with no changes.

12jun17:
.) slight improvement of deep sea foam effect on
	trailing side of wave.

28may17 ... trial ocean effects
.) gameutils.adb::3029 (bluefoam.fs):  distant swirling effect
	but what I'm looking for is a double-layer effect
	near the surfline, like realMyst.

23may17:
.) moved several unused *.png files to ../aghide/

15may17: library test results:
.) adding libstdc++ (from rgate) NOT necessary for adagate
	or Ada apps, to run on Scientific Linux
	for some reason.  Not sure why.  
	It WAS necessary for rgate + other c++ apps.

12may17:
.) now call sdl_getkeyboardstate after each sdl_pumpevents call.
	I think this is the correct way to handle the update
	of keyboard events.  

6may17:
.) put video NeptuneChoir onto you-tube, IndieDB.

##################################################
15apr17 delivery v6.1.3   gitHub,itch,IndieDB,SF #
##################################################


13apr17:
.) Corrected portal drawing geometry when in third-person mode.
	Now avatar is visible and the portal view is always aligned.

2apr17:
.) improved avatar treading/swimming motion...looks great.

31mar17:
.) cleaned up code somewhat (removed unused);
.) improved avatar motion...added treadwater.

##################################################
31mar17 delivery v6.1.2   gitHub,itch,IndieDB,SF #
##################################################


30mar17:
.) elliminated error messages when entering level 5.
.) elliminated unused uniforms, level 5.
.) fixed posterior left leg UV map and
	anterior right leg (were X-inverted);
	See princessjasmine.png

28mar17:
.) corrected drawing order:
	.) DHD before Avatar (so transparency works correctly)
	.) Avatar before Ocean (so underwater body is drawn)
.) shooting, DHD-picking: simply put crosshairs in proper place 
	(lookdir of avatar);  and made avatar translucent when picking.
.) created funny, timid swim motion for avatar in ocean;


27mar17:
.) incorporated new window-discard method; added to fireball;
	This elliminated many various anomalies;
.) more carefully limited avatar around pools;
.) adjusted avatar-on-turtle ride;


26mar17:
.) somewhat functional but many problems arise when 
	wormhole	is active in thirdPerson mode.

24mar17:
.) added avatar (xagate).
	.) works on beach and dungeons;
	.) fails when wormholes active...
		Might need "window-discard" centered on portals
		rather than	halfspace-discard.
	.) need to enable passing thru wormholes;  See:
		.) adagate.adb::3320-3335, 3429
		.) gameutils.adb::958-966
		.) IF Necessary, temporarily switch thirdPerson OFF.


17mar17:
.) tested GNU ada compiler, but still needs glibc v2.14
	so no advantage here, over AdaCore.  Note that there
	was an advantage when sfml was absent...
	see RgbThinGlfw.

15mar17:
.) created script glibcver.sh to display most recent
	version required...2.14=jun11

##################################################
12mar17 delivery v6.1.1   gitHub,itch,IndieDB,SF #
##################################################

11mar17:
.) put Ominous Fireball video onto YouTube...
	.) linked to SF, itchio, IndieDB, github.
.) added compile script for gnu-ada (gcmpd0.sh)
	which required running fixlib.sh in ./libs/gnu/.

7mar17:
.) created awesome rolling fireball in lava room.
	.) uses rectxfineobj--a subdivided unit cube @ origin
		that is sized, oriented, positioned thru uniforms.
		Shaders then project this cubical shell onto a 
		spherical shell;  then a coherent 3D noise
		function is used to define perturbations whose
		magnitudes index into a 1D colormap.
	.) tried & failed with sphereobj, cylrobj.
	.) Added penalty logic testing whether too close
		to fireball.  If so, scream & exit.


##################################################
1mar17 delivery v6.1.0   gitHub,itch,IndieDB,SF  #
##################################################


28feb17:
.) removed deprecated glshademodel function

25feb17:
.) added dumpGLerrorQueue function
.) changed GL-exception-raising to mere remarks, 
	since they may be uncomfortably common...
	UNLESS dbug=true (0 on cmdline)

24feb17:
.) Now using glEnable(gl_texture_cube_map_seamless) with no error,
	whereas glEnable(gl_texture_cube_map) gave glerror.
	Just discovered this today.

21feb17:
.) improved directory layout:
	.) removed binding_to_sfml;
	.) added adabindings/sfmlAudio
	.) adjusted scripts *.sh

18feb17:
.) elliminated glactivetexture(gl_texture0) from
	.) pngloader.adb
	.) utex.adb
.) elliminated bad call in several places:
	glenable(gl_texture_cube_map); --causes glerror
.) added GL error checks to
	.) shader.adb
	.) utex.adb
	.) pngloader.adb
	.) adagate.adb

17feb17:
.) elliminated utex-load*
.) added full error checking in shader.adb following example
	from C++ (rslid):
	.) checks vshader compilation;  gives error message;
	.) checks fshader compilation;  gives error message;
	.) checks shader program link;  gives error message;

11feb17:
.) added some uniform-initializations in *.vs, *.fs:
	.) uniform int lightFlag = 0; // 0=>no, 1=>yes
	.) also level, isel, iside
	so that the default is attained without definition;
	See texobjHalf2.fs, texobjFog2.vs, turtle.fs, turtle.vs,
	and several others with halfspace discard (iside).

.) x-key output added:  
	.) maxUniformBufferBindings
	.) maxUniformLocations
.) minor improvement to frag.shaders' handling of
	portal-discards.

8feb17:
.) noted poor execution on Intel-NUC;  after DHD button
	is pressed, all the fish go berserk.  Seems like the fish
	shaders that use time varying uniform values are flawed.
	Trees are Ok.  Pretty sure problem is linux graphics driver.
	Checked code...see nothing special when dhdstate>0...
.) Found thru research that it should be perfectly Ok to use
	uniforms as I do, but there may be some very large maximum 
	number of uniforms allowed.


############################################################
7feb17 delivery v6.0.9   itch.io, gitHub, indieDB, SF
############################################################

6feb17:
.) perfected parms for turtle mount.  This required careful
	attention to angular comparisons.
.) reduced size of mountainscape, level 2 (too heavy).

5feb17:
.) elliminated gratuitous hole in wall.  Tested Ok.
.) ensured quad CCW traversal & correct normals:
	.) pictobj: changed: sokrcpt,walls,ceil,pics,SOS,islandSign
		orig @ pictobj0.adb;  changed 4 island pillars on DHD.
		Now uses images neither backwards nor upside-down.
	.) twictobj: no change, perfect
	.) rectobj: no change, perfect
	.) zfishobj: no change, perfect

4feb17:
.) corrected normal directions in
	.) mroomobj
	.) pictobj
	.) rectobj
.) corrected CCW enumeration of vertices in pictobj.

31jan17:
.) turtle is now rideable either way, north or south.

30jan17:
.) now draw turtle within portal too.

29jan17:
.) finalized mount/unmount parameters for a robust
	turtle ride across lava pool.

28jan17:
.) elliminated redundant fishtexshadid initializations
	inside gameutils.adb @ 2984
.) moved unused files from ./data/ to ../hideAGdata/.

27jan17:
.) upgraded turtle to be ferry-capable.

26jan17:
.) finalized nice CCW circular lava-turtle orbit with headbob.

25jan17:
.) significantly improved multi colored fish texture.
.) simplified fishw2.vs (to check my understanding)
.) succeeded with programmatic placement of turtle.
	Using turtle2.fs, hemi2obj.  I got a texture body
	and separate head that looks good.  Discarded this
	to prefer shader placement via uniforms.

24jan17:
.) built hemiobj(dx,dy,dz): for turtle.
.) made shaders that allow uniforms (xc,yc,zc,hang)
	and allow fog+lighting+halfSpaceDiscard.
	See turtle.vs, turtle.fs.

23jan17:
.) added window/picture frames with Fog/lighting enabled,
	to plain wall pictures and fancy wall-shaders;
.) tried to enable fog for redplanet, daliClock BUT
	difference was negligible.
.) created hemiobj.adb for upper surface of turtle.

22jan17:  added lighting to lava.
.) Added transposeInverse 3x3 matrix function to matutils.
.) combined rufas.vs and texobjFog.vs to become texobjFog2.vs
.) combined rufas.fs and texobjHalf.fs to become texobjHalf2.fs
	=> Halfspace discard + Fog + Lighteffects
.) Level 3 lava lighting effects is now awesome!
.) New shaders are written to be backward compatible, 
	ie work W/O lighting.


21jan17:
.) added normals to mroomobj, rectobj...
	to be used with lighting-enabled shaders.

17jan17:
.) improved lava pool
	.) synchronized pulsing with waves;
	.) increased wave amplitude near center;
	.) reversed colors so hottest are near center;

16jan17:
.) restored numWaves constant to 4 (was 2) in lvwater2Fog.vs
	Also returned to more believable rectangular waves
	(bouncing off edges of rectangular pool)
.) setup alternate lava pool shader with surface color 
	coded per Ypos	using "explosion.png" (black=highest)
	See lavaFog.fs, lavaFog3.vs
	This is my choice for possible narbacular drop clone.
.) ...BUT...restored original fancy shader @ level 3.

13jan17:
.) minor improvements to cyl2obj.adb code.

11jan17:
.) added clarifying comments to 11 frag shaders and adagate.adb
	explaining usage of halfspace-discard uniforms.


############################################################
4jan17 delivery v6.0.8   itch.io, gitHub, indieDB, SF
############################################################

3jan17:
.) minor error message (libopenal.a) corrected by
	using shared lib.

1jan17:
.) Corrected programming logic to delete old context prior to
	creating new one.  This may not have been noticeable
	given fullscreen mode.
.) refined scripts.


############################################################
29dec16 delivery v6.0.7   itch.io, gitHub, indieDB
############################################################


26dec16:
.) improved opengl code to allow less capable graphics.
.) improved build system to make apps that run on
	more linux distros.

29nov16:
.) now working under sfml v2.4.1
.) repaired OS-X bundling.

28nov16:
.) Now using generalized snd4ada.cpp with a more elegant interface.
.) Now uses lightweight frag shaders that can run on my new debian mini-desktop.
.) Omitted ocmp.sh because executable fails to find libsnd4ada.so
	when run as a Mac App.

17nov16:
.) runs decently on debian mini except for swiss-cheese fragment
	shader.  Need option to use lightweight frag shader.


############################################################
5nov16 delivery v6.0.5
itch.io, gitHub, indieDB, SF
############################################################


3nov16:
.) reduced size of some png files in ./data/.
	Moved some to ./hide/.
.) fixed KO for lean-to
.) corrected KO errors for trees;
.) adjusted all KOs.

25oct16:
.) removed dead-stop; replaced with tangential deflection
	while moving out into the surf.  Action seems much nicer.
	See gameutils.adb::3562, 3584

23oct16:
.) made video pip4.flv;  uploaded to you tube at
	https://youtu.be/DU8xZ5oJ9uY

21oct16:  
.) 2portals, same wall, now fully functional:
	Created a shader addendum that allows discarding all 
	graphics in a halfspace that we dont want to see.
	Affects fishtex* x*picshad *poolshad, pgmtexshad*
	Conclusion: this is an interesting technique that
	could be applied to any fragment shader.
.) cleaned up "noise" in fish texture.
.) some cleanup/robustification of code logic.

20oct16:
.) improved aspect of illusion.png

############################################################
20oct16 delivery v6.0.4
itch.io, gitHub, SF, indieDB
############################################################


19oct16:
.) according to Julian Thijssen (co-author with Henry Hirsch), 
	they do not construct a whole room on the other side of 
	each portal (somehow a conical view only?), so that
	there is no similar interference problem in glportal.
	See "gitter.im/GLPortal/glPortal/".

15oct16:
.) P-in-P version with shoot* fixes is Ok now,
	this version now seems robust and allows shooting 
	within a portal.  However, if 2 portals are located on 
	the same	wall but at different heights, then only the 
	closer one is drawn because their virtual worlds 
	would overlap and interfere with each other.

.) replaced stone gateway "door.png" witn spinning tardis.
	I made a new type that does not draw top/bottom surface.
.) changed stargate type from rectobj to pict1obj
	so that only front surface is drawn (not all 6).
.) removed a few other "kinks";
.) moved repositioning calls to rectobj.setrect
	from drawroom to updategamestate.  Drawroom
	should only draw, now that it is called 3 times.


14oct16:
.) found error involving portal display
	whenever 2 portals are on same wall.
.) FTTB, I disallow 2 portals on same wall.

13oct16:
.) now allow shooting @ target seen inside either portal
	with either gun.

12oct16:
.) added bwClouds to half of level#2 ceiling;
.) added horizontal wooden pillar ceiling edge
	using a new horizontal cylinder option.

1oct16:
.) found and fixed a ceiling overextension in lev #1,2
.) found translucent portals (0<a<1) don't work because
	they hide water in lev #1,2,4
.) also found no reason to disable holes while drawing
	view from inside each portal...the only minor difference
	is that the wall texture becomes visible rather than
	a black hole, the latter of which seems more apropos.

30sep16:  created short video going thru new portal.

############################################################
26sep16 delivery v6.0.3
itch.io, gitHub, SF, indieDB
############################################################

26sep:
.) fixed portal gun aimpt whenever above ledges

25sep : success!!!
.) carefully went thru each dungeon to insure that no texture
	exceeds the room-bounds (even the fancy fragshader pics);

.) accomplishments/improvements:
	.) new method to draw holes in textures using frag. shader!
	.) slightly improved "main" structure using:
		.) drawroom (still ugly)
		.) preplevel
		.) getuserinputs

23sep
.) devised a simple way for shader to create moveable holes in wall:
	have *.fs set color.a=0 whenever aPos is close to hole 
	center (see texobjHole.fs, adagate.adb::2051)
	.) simply set radius to zero to disable holes.
	.) Now need to draw everything thrice...
		.) first, reset (xme,yme,zme) coords for view thru portal, but:
			.) new coords MUST be invalid values for current room,
			.) textures in a room must be completely within its bounds.
		.) redefine MVP, then draw portal view of room;
		.) repeat for 2nd portal;
		.) finally, reset and draw current room normally.
		.) Note that normal room draw must be last, so that
			there is something to see behind each portal
			prior to drawing the portal hole transparency.

31aug
.) updated to use xtreeobj, which is more economical, by
	using fewer vertices, cuts the required number of 
	tree-draws in half, and simplifies the sway-indexing.
	Also changed the indexing identities within windtexobj 
	accordingly.  So changes were made in the files 
	gametypes.ads, gameutils.adb, windtexobj.vs
	id: 1..2=shortpalms, 3..8=tallpalms, 9..11=bamboo, 
	12..16=grass

21aug
.) thinned oarfish to hide upper texture edge @ nite.
	Some other ideas failed.


############################################################
3jul16 delivery v6.0.2 #####################################
itch.io, gitHub, SF, indieDB


9jun
.) found a way to pass $PWD into gpr file, if needed.
.) succeeded with osx.gpr gnat-project file for OS-X.
.) failed to create GPR that generates libsnd4ada.so
	Can use osxsnd.sh, or can create/use snd4ada.o.
.) succeeded in making a 1-step GPR file (osx1.gpr) that
	produces snd4ada.o and thence, adagate_osx.

28may
.) setup gnat-project file...DONE:  gnu.gpr (build-gnu.sh).
	mainly for Gautier, who might try to compile for windows.
	Cannot get osx version to work...very confusing.  Not
	my fault.  AdaCore fixed problem after my complaint.

12may16:
.) due to other experimental results, I tested the scripts:
	?cmpxsp1.sh, ?cmpxsp1,sh
	making a final attempt at using smart pointers.
	All 4 work perfectly (using snd4ada-sp.cpp)...
	But we must avoid static libopenal.a, 
	and on linux avoid static sfml, as well.  So I decided to
	abandon these efforts at using smart pointers...

 	smart-pointers preclude using certain static libs, so the compile 
	script options that work with smart pointers are more limited.  
	That is why this represents 4 script options from among 10:
	* lcmp.sh : Linux, all shared libs
	* lcmps.sh : Linux some static libs
	* lcmpss.sh : Linux maximal static libs
	* ocmp.sh : OSX minimal statics
	* ocmps.sh : OSX some statics
	* ocmpss.sh : OSX maximal statics
	* lcmpxsp1.sh : Linux smart pointers, min static
	* lcmpxsp2.sh : Linux smart pointers, max static
	* ocmpxsp1.sh : OSX smart pointers, min static
	* ocmpxsp2.sh : OSX smart pointers, max static


10may16:
.) added lava shriek...testing...
.) testing OpenAL:
	.) intrinsic OpenAL good for ocmp.sh, ocmps.sh
	.) static OpenAL still good for ocmpss.sh...
		unless we use smart pointers.
	.) conclusion:  remove local OpenAL framework


10may16:
.) tried smart pointers again, but this time I stopped all sounds
	before terminating...still did not work...I believe due to the
	GNAT runtime system interference with the usual
	C++ smart pointer deallocation phase...see above 12may16.
.) One thing I like, though, is to do these 2 things:
	(*psound).stop();
	stopSnd();
	...before deallocating stuff in termSnd().
	This is does not require an interface change.
.) to try:
	.) see if intrinsic-OpenAL-framework gives any problem
		for a) ocmp.sh,  b) ocmps.sh
		...NO, both seem to work fine.

############################################################
7may16 delivery ############################################
itch.io, gitHub, SF, indieDB

6may16:
.) standardized all skybox images to 1024*1024

5may16:
.) updated static OpenAL library that elliminates OS-X
	deprecation warning.  Thusly, the new preferred
	compile scripts use this static lib: ocmpss.sh, lcmpss.sh

3may16:
.) Fix:  hum now correctly stopped after triggering eXit box.
.) Added local OpenAL framework that works cleanly
	with sfml-audio.

2may16:
.) removed some unneeded libraries in ./libs/gnu/ and the
	OSX frameworks directory.
.) added -DSFML_STATIC flag where appropriate, even though
	everything worked before this.  Not certain these flags
	are still needed in SFML-2.3.2, but they don't hurt.
.) UNTIL I gain confidence in using new SFML libs, I should
	update olagate also, & keep handy.  As of 2may16, 
	they have been both updated the same.

30apr16:
.) adjusted small palm location.
.) improved ./data/windtexobj.vs to more realistic sway

29apr16:
.) greatly improved hum.ogg

27apr16:
.) tried [smart] shared_ptr for sfml sounds (snd4ada.cpp) but
	executable did not exit cleanly.  I suspect an Ada
	main upsets the c++ smart pointer finalization mechanism.
.) note that I have not yet been able to get the new sfml
	libs running in C++ on OS-X ...
	(using intrinsic OpenAL frameworks) ??


26apr16 delivery ############################################
itch.io, gitHub, SF, indieDB


25apr16:
.) PROBLEM SOLVED!!!
	By using dynamic allocation of sfml sound objects, it is 
	now possible to use the static SFML v2.3.2 libraries in 
	linux to	produce a more portable binary.  See scmp.sh
.) Also, see ocmps.sh, for the static SFML script for
	OSX, which also works.

24apr16:
.) KEY discovery:  sfml sound objects may NOT be allocated
	at global scope if I want to use static libraries...
	(and probably should	not be global in any case).
.) This implies I may need to initialize sound buffers
	and music objects in main;  then pass them as needed to 
	functions and procedures.

14apr16:
.) Note:  xcmp.sh tries static sfml, compiles fine, exe seg.faults???
.) improved documents
.) added 2 [osx] frameworks directories to give clear choice:
	.) preppedFrameworks
	.) rawFrameworks


13apr16:
.) repaired gnu-linux compile scripts to guarantee the runtime
	loader finds and uses the local libraries like ogg, vorbis, etc.
	Note, it seems the loader give preference to local libs
	whenever the "-Xlinker -rpath='xxx'" link option is given.

11apr16 CORRECTION:
.) with the help of Marco A. (Mac & SFML expert)
	I discovered a compilation script technique that
	allows use of raw frameworks by adding two special
	Xlinker commands.  See ocmp.sh.
	Of course, the advantage is that a user can
	download and use libs directly from SFML
	without using my special script fixlibs.sh.
	(The previous script is ocmp_prepped_libs.sh and
	requires the "fixed" frameworks be used.)
.) note also that I discovered that @loader_path
	seems to reference the location of the actual
	binary executable, rather than a script or
	softlink that calls it.

10apr16 remark:
.) when building on OS-X without Xcode, I found this:
	.) compilation MUST be done using my "massaged" frameworks;
	.) execution MAY be done using raw frameworks.
	.) OpenAL is needed but comes in OS-X v10.4 and newer!

8apr16 remark:  
.) tried using static sfml libs but exe seg.faults...
	compiles fine...
	...problem with libsfml*.a ???



29mar16: deliver v5.8 to S.F. ########################################
29mar16: deliver v5.8 to itch.io #####################################
29mar16: deliver v5.8 to github ######################################
29mar16: deliver v5.8 to happypenguin ################################

28mar16:
.) preparing next release with good, usable sfml libs.

27mar16:
.) found that my delivered linux exe does NOT run.
	It is using the bad audio=141K libraries.
	Now, trying on gateway...wont work here either.
	The built-from-source libs work fine.


27mar16: deliver v5.71 to S.F. #########################################
27mar16: deliver v5.71 to itch.io ######################################


26mar16:
.) Fixed error in linux compilation system that failed to use local
	copies of ogg,vorbis,FLAC,openal libraries.  Now, the system
	will compile on linux systems without those libraries installed.


26mar16: deliver v5.7 to S.F. #########################################
26mar16: deliver v5.7 to itch.io ######################################


25mar16:
.) created a StandAlone installation of AdaGate using local Frameworks
	on OSX...after much pain to revise their embedded names.
	You must now click the APP, or you can execute from the commandline:
	adagate.app/Contents/MacOS/adagate.



24mar16:
.) completely redesigned compilation system to allow new SFML 
	version 2.3.2, that seems to preclude static linking on OSX.  



22mar16: deliver v5.6 to S.F. #########################################
22mar16: deliver v5.6 to itch.io ######################################

21mar16:
.) ceiling shader for level 4 is now opaque.
.) Xlated more WAV to OGG due to size BUT found that current libraries
	won't play OGG files on OS-X.  So, Xlated to AIFF.
.) fixed island sign, freckle cream jar.
.) fixed erroneous local worm sounds [Qport].
.) added Xport sound returning to island.

18mar16:
.) added guard statements in snd4ada.hpp in case SFML has a problem
	with loading a particular sound file.
.) elliminated lava-loop.wav since it was problematic for the newest
	sfml audio.  Using sox, I converted several other large wav files
	to ogg since ogg files appear to be much smaller.  Have not yet
	converted to newest SFML.

16mar16:
.) to optimize for Retina @ highdpi, final griddings are
	ocean(200,200), sand(60,20) and swiss2 for local worms.

19mar16: adagate delivery v5.5 to itch.io ############################
13mar16:  adagate delivery v5.5 to S.F. #################################

12mar16:
.) significantly better ocean & lagoon appearance by using
	more angular grid points for island sand.  This change 
	required vertical readjustment of some features on sand 
	surface due to better approximation of height function.
	Final values:  ocean(360,200), sand(120,20),  ...awesome 
	surfline & realistic ocean opacity.  And the lagoon color
	and opacity finally looks reasonable even during flyover.
	Note:  >600 radials in the ocean, caused water tearing 
	in lagoon entrance due to non-smooth wave normals.  Higher
	values also caused jerkiness on MBPro [with or w/o Retina].

10mar16:
.) further ocean shader enhancements:
   final revision of foamingxx.fs per rgate...looks very good now
	with actual slant depth augmentation of opacity,
	and ocean(360,200) [360 radials X 200 circles]
	which is up from the old values of ocean(100,200).
	Discarded Fresnel since slant depth effect is similar.
	Much better opacity control when looking thru surf toward
	deep water.
.) further darkened nightime shaders of palms & sand for improved realism.

8mar16:
.) reworked foaming4z.fs with depth-based opacity so flyover is 
	still possible...

5mar16:
.) trimmed, reduced size of two *.wav files (lava, freezer-hum).
.) settled on lighter-weight wormhole fragshaders.


5mar16:  adagate delivery v5.4 to S.F. ##################################

04mar16:
.) fixed rare error in shoot so as to detect KO nearest the target.
.) found & fixed error in exit portal yposition:  
	if high, we did not drop to floor because of an oversight
	in the new wormhole algorithm.
.) replaced lostInSpace with cloudsInSpace.

03mar16:
.) swiss2.fs is too heavy for gateway [Gforce gt610], and probably
	MacMini.  Replaced.
.) consolidated drawWormHole to a single proc. to avoid future confusion.
.) adjusted lava.
.) removed highdpi flag.
.) added 3rd worm effect.


02mar16:
.) minor adjustments in fish (tinier fdx).
.) moved many unused files from ./data/ and other unused packages
	into ./unused_packages/ (documented just in case I moved too many)

01mar16:
.) cleaned up tunnelobj code.

29feb16:
.) found and setup a 2nd excellent fragshader
	for use in wormhole travel.
.) made wormhole also work for level 5 and return to island,
	by using narrower tunnel to avoid intersections with
	existing textures.

29feb16:  adagate delivery v5.3 to S.F. ##################################

28feb16:
.) fixed rare error that could allow opaque portals when worming.
.) simplified "tunnelstars" shaders...they are essentially 
	disconnected, and show only on the walls of tunnel.
	Also had to correct the spin center by sending (Fwid,Fhit)
	rather than (winwidth,winheight) to frag.shader.
.) finalized utex* for more generic types (float,integer)
	and clean letter separation.
.) discovered that the "open in low res" checkbox in OSX
	does NOT work when my exe is compiled for HDPI.

27feb16:
.) created long thin rectangular [20x1x1 tunnel-] room 
	that "connects" portals;  when passing thru the entry
	portal, the eye is placed at a point within the tunnel
	furthest from the exit portal;  tunnel WAS all black with
	a square exit portal as the only visible feature, but now has
	a disorienting, spinning starfield...awesome!
	User-control is suspended until progression thru the wormhole 
	spits you out to the normal exit location, as before.
	Works like a cut-scene.
.) Now works when passing thru the island stargate, too.
.) effect works well only for arrival into room interiors,
	somewhere near an outer wall;  not for arrivals into skybox 
	centers.  Thus, it doesn't work for level 5 epilog, 
	or returning to the island.


26feb16:  adagate delivery v5.21 to S.F. ##################################


26feb16:
.) found that new utex is bad...so fixed it.


26feb16:
submission to: http://pressroom.bigfishgames.com/premium-games-submission


26feb16:
.) discovered/corrected problem with utex* that produced bad
	portal gun trajectories.

23feb16:
.) elliminated erroneous artifacts in the serpent texture edge.
.) created desktop file for linux...but no value added.


18feb16:  adagate delivery v5.2 to S.F. ####################################

18feb16:
.) created Mac Bundle, allowing users to open at low resolution.

11feb16
.) normalized utex;  caller now sets filename.


6jan16:
.) enhanced fish shader with new uniform governing CW/CCW rotation.
.) created green mamba sea snake with tubular body.

4jan16:  adagate delivery v5.1 to S.F. ####################################

01jan16:
.) got splashing in prolog to work.  Seems Ok using an 
	sfml:sound loop rather than a second sfml:music loop.
.) splashing logic now more complex with game controllers involved.
.) created settings.txt to hold game controller params.
	This file may be absent, but has rigid format if edited.  Thus,
	sensitivity and button maps are user editable.


31dec15:  adagate delivery to S.F. ########################################

31dec15
.) bad executable delivered...won't start without game controller.
	Repaired that problem;  numbered all asserts.
.) preparing to allow user config of controller buttons...soon, not yet.
	Added sensitivity factor.
.) corrected button numbering gamepad vs joystick.


30dec15:  adagate delivery to S.F. ########################################

30dec15:
.) made joystick code improvements to allow a small neutral tolerance that elliminated cursor creep.
.) discovered a problem with the splash sound in the prolog.  When I elliminated it, suddenly the game controllers worked perfectly on OS-X.  I seem to recall that 2 music loops cannot run simultaneously in SFML.

30dec15:  adagate delivery to S.F. ########################################

29dec15:
.) after watching my young tester struggle with the mouse and keyboard 
	controls, I decided to enable joystick/gamecontroller function
	to augment the mouse & keyboard.
	.) joystick controls attitude, thumb button moves forward, trigger button
		moves backward, topleft or topright buttons select on DHD and
		shoot portal guns, near base button jumps.
	.) gamecontroller:  left stick controls attitude, right controls movement;
		left or right trigger buttons select on DHD and shoot portal guns;
		near base button jumps.

26dec15:
.) added subdirectory "extras" to ./libs/AdaPngLib/ with both versions
	of my pngloader package.
.) stopped splashing when halted @ max radius.
.) slight adjustment of splash sound.


25dec15:  adagate delivery to S.F. #############################################

25dec15:
.) prolog:  added splash sound when swimming in water.

24dec15:
.) elliminated annutexsurfobj;
.) cleaned up some code;
.) improved shaders for lagoon with adjustments to foam, waves.


23dec15:
.) tall palms are bigger;  more bamboo.
.) adjusted skybox Y-radius larger.  This will allow us to do a
	low altitude island flyover at the beginning of the game.
.) added testing keys:  u,d
.) added an awesome new flyover "cut-scene".

22dec15:
.) improved programming of pngloader using an essential Ada 
	representation [alignment] clause to send the correct data to 
	OpenGL when the texture image is RGB-mode.  Prior to this fix 
	I had been using a workaround that also worked fine.
.) created mroomobj so that more modest texture files still look good
	on the walls of a large room.  It allows multiple image mirrored-
	reflections	per wall, rather than only one.
.) reduced the size of some of the larger texture image files, now
	that they look as good.
.) improved graphical performance in level 4.
.) added angle uniform for crab-objects (fishbones).


20dec15:  adagate delivery to S.F. ####################################

19dec15:
.) multiple palms, rocks are now drawn using only one object (like fish).
	This might reduce graphical burden, probably saves memory, and certainly
	reduces programming complexity.  It also elliminates a potential problem 
	I created by my poor old design:  synchronizing 2 sources of the same 
	data, eg. object Y-center (object itself versus vertex shader uniform).
	Now, treeobj, rectfineobj, itemobj always use origin for center and
	unit radii.  zfishobj uses origin for center, with specified radii.


18dec15:
.) added sea serpents.

17dec15:
.) corrected error in rectfineobj.adb;  improves lean-to appearance.
.) succeeded in creating more realistic fish swimming movements.  Needed a new
	zfishobj, a version of rectfineobj with a single partioned dimension (Z).  Also
	needed to create a vertexshader, fishw.vs to define a propelling motion.
.) created school of piranha swimming in circle.


14dec15:  adagate delivery to S.F. ####################################

13dec15:
.) will no longer run on my old minimac due to excessive graphical burden.

12dec15:
.) created annular atoll island with dark central lagoon;
.) changed horizontal scale on island-world from radius 10 to 20;
.) added 5 tall palms and improved code to facilitate it;
.) adjusted palmtree shaders to properly set sway per tree;
.) improved/simplified weed/tree sway management & related shaders.
.) increased visibility of shark;
.) added primitive shelter [lean-to] with skull, arm bone.
.) added keepouts for electra cockpit, lean-to, SG pillars, tall palms.
.) added fishbones, burnt logs.
.) added channel.
.) moved ZPM further from base.



09dec15:  adagate delivery to S.F. ####################################

8dec15:
.) corrected line in gameutils.adb:3074 to:
	glUniform3f(mpeyeID, glfloat(xme), glfloat(yme), glfloat(zme) );
	rather than
	glUniform3f(mpeyeID, glfloat(xme), 0.0, glfloat(zme) );
	The difference is a subtle improvement in ocean reflections...
	Danger...shark is harder to see when wading in water!

.) corrected error in cyl2obj.adb that drew erroneous endcaps for all ZPMs.
	This was only an issue for the 30nov15 release.

.) made other corrections pertaining to yme position now that it changes.
	now more carefully maintain proper eye level.


6dec15:
.) exposed 2 more pumpevents calls to preclude nasty gnome message.

5dec15:
.) created README.md
.) put onto SF.

3dec15:
.) updated ocmp.sh to assume gnat2015;
.) updated lcmp.sh to reference local sndfile, openal;


30nov15:  delivery to S.F. ####################################

29nov15:
.) perfected pngloader now handles both RGBA and RGB 
	png image files for textures.

28nov15:
.) updated cyl2obj.ad? per sokerban to assure decluttered namespace.


11nov15:  delivery to S.F. ####################################

10nov15:
.) encapsulated "release_textures" in adagate.adb
.) cleaned up code a bit in gameutils.adb
.) virtual height yme now varies to maintain a fixed height
	above the sand.  This changes the view perspective.  
	ZPM height is now similarly adjusted.


10nov15:  delivery to S.F. ####################################

06nov15:
.) In order to help clarify what provides power to the stargates,
	the beach ZPM is now movable and initially off receptacle,
	and closer to the DHD to make its relationship more obvious.
.) made beach rocks into obstacles;


20oct15:  delivery to S.F. ####################################

15oct15:  delivery to S.F. ####### ...failed ... #################
(*.tar.gz file was too small...upload must have gotten truncated.)

15oct15:
.) replaced last remaining call to 
	SDL_Init( SDL_INIT_EVERYTHING )
	with
	SDL_Init( SDL_INIT_VIDEO )
	inside "first_prep".  This should enhance portability according to
	linux-app-checker.


02sep15:
.) bumped ocean to 100x400, then 100x300...FAILED,jerky on MacBooks
	...reverted back to 100x200.
.) bumped epilog to 200 (per rgate)...fine on MacBooks.

02sep15:  delivery to S.F. ##############################################

31aug:
.) fixed seaweed Y-pos to better match sand contours;
.) island surface was revised to use a grid of annular concentric rings
	rather than a rectangular grid.  This allows a more accurate model
	of the circular island with reduced graphical burden.  The key
	to the success of this implementation was a smart texture mapping.
	Gridding is now 16 radials by 10 rings, which models the island
	shape much better than the old 13x13 [truncated] rectangular grid.
.) adjusted epilog vertex shader to look better within the 
	limitation of circsurf(100).  In this case, the truncated rectangular
	grid was more appropriate for its "rectangular" wave action.


30aug:
.) corrected sizing constants within circtexsurfobj.ads (now defunct).

29aug:
.) ocean was completely revised to use a more efficient nodal layout with
concentric rings rather than a rectangular array.  This allows a more perfect
looking ocean with reduced graphical requirements.  Essentially the
400x400 rectangular grid has been replaced with a 100x200 annular grid
that runs smoothly on a broader range of graphical hardware.

18aug:  
.) ocean now uses N=200 since 400 caused jerky movement on highDPI Retina;
	even though triangular artifacts are now visible in waves using 200.
.) island now uses N=13 due to fidelity problems with N=9 (sandHt).  
   Note that N=15 fails on old MacBook.
.) moved starfish, crab to surfline since improved fragshader allows it;
.) moved seaweed center to Electra nose.

14aug:  added loadpng2 function to reduce visible edge of fish & shark textures.
Also, the shark has now been editted in gimp to be opaque.

13aug15:  delivery to S.F. ##############################################

12aug: 
.) added seaweed near plane (see rufasgate).
.) improved tree, fish and stargate textures using glsl "discard" 
	statement, which has the desireable effect of making transparent 
	portions of textures	disappear completely.

08aug:  completed fine tuning of foaming4y.fs parameters
	deep, tt, color.a
	for improved ocean appearance.

03aug:  created a glsl uniform that is passed to fragment shaders
to darken these island textures at night:
	. sand
	. palms
	. rocks
	. gate
	. airplane



30jul15:  delivery to S.F. ##############################################

27jul:
.) Added low hanging fog/smoke to each dungeon room.  But to look correct,
	I calculated and applied fogFactor using the same formula inside the 
	water & lava shaders.  If it were not low ground fog, I would also need
	to do this in the wall-scene shaders.  Reference:
	http://www.ozone3d.net/tutorials/glsl_fog/p03.php
.) note that island fog obscures the nice skyboxes yet does not seem
	to properly affect the grasses or palms?

26jul: improved ocean and surf:
.) modified depth component of opacity to utilize water L.O.S.-depth 
	instead of vertical depth.
.) added pseudo-Fresnel effect to water by increasing opacity
	[and thus reflectivity?] as the angle between L.O.S. and surface 
	normal approaches halfpi.
.) Thus, in summary, both slant-depth and fresnel factors are
	considered in setting opacity;  
	see foaming4y.fs
.) added dominant island-concentric wave form to the existing directional
	waves to improve the action of the surf all around the island;  
	see sundown4y.vs
.) Also increased the beach slope so the waves looked more realistic.
.) Had to use ocean gridding of N>=200 to hide triangles in water,
	even though it is somewhat burdensome for the Mac Retina display.




14jul15:
.) Now using multiple SDL_PumpEvents calls to preclude an erroneous
	"application-not-responding" dialog under Gnome.


11jul15:  delivery to S.F. ##############################################

11jul15:
.) Only just now fully fullscreen using SDL-flag.

9jul15:
.) Reduced graphical burden of moving wall scenes (level 2,3) to avoid jerky movements.
.) lowered level 2 partition so water is more visible from ledge.
.) Reduced graphical burden in level 5 (epilog).


7jul15:  delivery to S.F. ##############################################

07jul15:
.) Fixed coding logic error in the movement [jump/fall] physics model.

02jul15:
.) Now ZPMs light up whenever sitting on a receptacle, rather than
	only when puzzle is solved.

30jun15:
.) changed foaming4.fs to increase opacity near island [underwater] edge,
	and improve water, particularly at night:
	.) deep is 0.10, was 0.15
	.) color.a = sqrt(opac),  (=opac was too translucent near beach);
.) note that the shark is now less visible but still can be seen
.) changed Amelia-sky to just sky--
	It seems Niku-VIII was a bust.  The underwater ROV malfunctioned
	so we may never know if the anomaly at 300 feet was a fuselage.
	Only the freckle cream remains :(


jun15:
.) added solutions file in ~/data/solns.sok


1apr15:  delivery to S.F. ##############################################

31mar15:
. modified SDL_Init call to only initialize systems we actually use.
  Otherwise, the linux executable may not run, as I discovered.
. more carefully modified compile script and added helpful comments
  that will more likely allow it to work on any user's machine,


30mar15:  delivery to S.F. ##############################################

28mar15:
. discovered using ldd that the local libraries seemed
  not quite right.  There were two problems.  First,
  the softlinks were not properly preserved.  Second, one
  should never reference a libGL or libstdc++ that is "foreign" 
  to the target system.  The net effect is that the delivered
  linux executable would not run on any machine.
  That has been fixed.


26mar15:  delivery to S.F. ##############################################

25mar15:
. enabled OS-X builds on any Mac with a recent version of OS-X 
  that has a GNU Ada compiler GNAT installed.  New static libs 
  and a new build script "ocmplls.sh" enable this capability.
. Similarly, I believe most linux distros with GNAT installed 
  are now capable of building adagate with the updated
  linux build script "lcmplld.sh".

23mar15:  delivery to S.F. ##############################################

23mar15:
. revised, clarified build instructions

22mar15:  using linux app checker:
. adagate_gnu_static
	. incompatible with any distro !!!
	. shall no longer deliver this.

. adagate_gnull compatible [given SDL2, SFML] with:
	. fedora 15,16,17,18
	. opensuse 12.1, 12.2, 12.3
	. ubuntu 12.10, 13.04 (?14.04?)
	. elliminated openal since it seems unused

15mar15:
. now using illusion2.png


28feb15:
. various clarifications and corrections;
. added cartoon palm tree, level 1;


27feb15:  delivery to S.F. ###############################################

26feb15:
. critical fix of readPuzzle.  Previously it aborted when
  hitting EOF.

25feb15:
. added mountainScape, level 2;
. added waterWorld, level 2;
. added cloudyBluePlanet, level 3;
. added redPlanet, level 3;
. added blueSpiralGalaxy, level 4;


14feb15:
. added SDL queries of compiled/linked version used;


15jan15:  delivery to S.F. ##################################################


13jan15:
. corrected a typo-error that gave a bad portal exit height;
. changed lumber(lambda)/brick(beta) levels to begin on ledge;
. added 5th DOD; revised 4th; checking for solvability
  and independence of entry (for 2, a bad entry => unsolvable
  but those cases are pretty obvious);
. added asserts at end of readpuzzle to preclude array bounds violations 
  with sokoban size or number of barrels;
. created:  intro_new.txt. Put into README.
. added the instructions: puzzle_replacement.txt
. now ZPM receptacles off until system activated
. ZPMs lighten when activated


11jan15:  delivery to S.F. ##################################################

10jan15:  submitted reference page data to FSF-directory:
	directory.fsf.org/wiki/AdaGate

8jan15
. added S.G. Earth symbol to stone door;
. now using thatched roof, new music for adobe tomb;
. now sokoban walls match building material

7jan15
. corrected a calculation error in pickleft;
. changed utex-loadtexshaders.adb to have a Z-depth coord of -1 rather than 0
  so that textured objects close to eye do not obscure text symbols;
. raised the height of the DHD;  improved look, function;
. added right-palm to alphabet in the place of the little used character "`";
  Now uses this hand character [rather than "*"] to operate the DHD;
. completion of game increments the DOD by 1, but can still be overridden;


7jan15:  delivery to S.F. ###################################################

6jan15
. each return to island uses different skybox;
. fixed multiple shoot activations causing poor sound;

5jan15
. island is now a "relto" type nexus that leads to any of 4 dungeons
  or epilogue by the use of the nearly buried DialHomeDevice [DHD].
  Thus, dungeons need not be experienced sequentially,
  and each leads back to the island stargate.

2jan15
. made portals empty until activated;
. changed walls in level 1 to "adobe"...
  so each dungeon is now constructed with a unique material.

1jan15
. added foam trailing wave peaks;
. corrected derivatives in shader...but since this is a 2nd order
  effect, there is no noticable improvement of reflections;
. increased wave amplitude for better appearance;

29dec14:
. updated to other-worldly skybox level 5;


29dec14:  delivery to S.F. #################################################

26dec14:
. further improved foam;
. added greenish color to shallow water;
. added position-based-phasing to foam ebb/flow;
. corrected a reflection error in the ocean shader;
. updated island skybox making a gorgeous reflective ocean;


23dec14:  delivery to S.F. #################################################

22dec14:
. added jar of freckle cream;
. improved grasses, tall palm;
. removed 77 from Amelia message;
. ocean opacity now a function of depth;
. added foam;


17dec14:  delivery to S.F. #################################################

17dec14 
. made better video of prolog
. made better screenshot of prolog
. made video of sokoban level 3

16dec14
. added wicker framework around stargate;
. added shark;

14dec14
. added tropical fish in prolog.
. changed pictobj so left/right are swapped on opposite sides of cube;
  so that a tall,thin fish texture made from a single image always has 
  its nose on one end, tail on other.
. considered solns to palm jumping...ideal fix would be to draw
  each half palm texture separately in range-sorted order.  I chose
  to try a Cheap Fix:  draw twice, first with depth test off.
. cleaned up mwaterlevel, sandHt ftn.


10dec14:
. revised readpuzzle for 1 file per DOD=1..4 (4=xxx)
. added more foliage in prolog:  grasses.


9dec14:  delivery to S.F. ####################################################


9dec14:
. discovered a thin binding to SDL2 by Dan Vazquez <danva994@student.liu.se>
  that enabled me to discard GLFW3 in favor of SDL2.
. Brand new build using SDL2 rather than GLFW3;
. Now highDPI on Retina works again!
. improved reflections behavior in prolog;  waves now follow island but
  reflections follow viewpoint.


5dec14:
. generated 2 distinct build scripts;  one using only shared libs
  that are found in ./libs/ and the "rpath" link parameter to direct
  the runtime linker to look locally for needed shared libs.
. now I will generate 2 executable binaries, one mostly static
  calles adagate_gnu_static, and the other called adagate_gnu_dynamic
  that is instructed to look locally for shared libs.


4dec14:  delivery to S.F. ################################################

3dec14:
. fixed abort in level 2 intended for level 3;  added Killed message;

2dec14:
. generated a better reflective water in level 2.  Still not
  perfect but a plausible approximation from likely viewpoints.
  The grunge skybox creates the most refreshing looking water
  but is too boring to actually use on the dungeon walls.  Another
  problem is that the rooms are 20x6x40 so cubical skybox reflections
  need to be distorted before they accurately represent the geometry of
  the room reflecting on the water.  Also needed to add a translation
  in the frag.shader so that reflections look correct as eye moves.
  Scrutinized reflections using near zero amplitudes & opacity=1.0


30nov14:
. made correction so that level 0 waves follow island, not viewpoint.
. reduced graphical burden so that executables will run on older hardware.
. genericized circsurfobj, texsurfobj, rectsurfobj per resolution,
  thus elliminating several other objects.
. made usboxobj:setrect take a radius parameter because I
  needed radius 2.0 for level 5 skybox in order to make the
  water level come up higher on the sides.

29nov14:
. improved appearance, reduced graphic burden of Electra;
. elliminated wasteful 3d rockobj since we only need
  the 6 surfaces.  Replaced with rectfineobj.ad?  This also
  reduced graphical burden on old systems.
. level 0 now works on old macbook (n=100);
. Yosemite killed retina-high-DPI mode under GNAT
  ...but note that cpp apps using glfw or sdl2 still get high dpi!
. tried newer GNAT compiler with same result on Yosemite.


28nov14: todo:  lower r4cy back to w-1.22 OR fix coloring on cockpit texture


26nov14:  delivery to S.F. ###############################################

25nov14:
. added gl_mirrored_repeat to libs/gl/gl.ads
. greatly improved sand texture but had to elliminate SOS;
. reworked rectobj to give texture coords proportional to
  physical dimensions, and I now can use gl_mirrored_repeat
  which improves all related textures like pool-lining
  and partitions.

23nov14:
. yosemite-build does not quite run on old MacBook @level=0 (Ok @ level=1)
  but neither does previous Mavericks build.  I think the new beach
  is too demanding on graphics.  Tried various reductions
  but none helped.


21nov14:  
. installed ubuntu onto Zeto;
. rewrote compile script accordingly;


18nov14:  delivery to S.F. ###############################################

16nov14 additions:
. Gardner Island sign;
. nose of Lockheed Electra in surf;
. translucent image in level 0 sky;
. sos in sand;
. water sound volume down to 60/100.
. lowered the skybox horizon for level 0


13nov14:  delivery to S.F. ###############################################


12nov14:  improved compile scripts:
. GNU script now uses $ORIGIN option to specify that the generated
  executable look in the ./libs/ directory for shared libs, if needed;
. simplified OS-X script;

11nov14:  revised the sound system:
. now cue zpm solution with Xport sound (per rg);
. now cue wormhole activation with Hum (per rg);
. add capability to handle 2 simultaneous sound loops;
  Note that sfml allows this.  Thus we can now hear both
  music and water;
. quieted some music to hear water/lava in background;
. corrected logic affecting activation Hum...which now turns
  silent, as it should, if ZPM is knocked off its receptacle;


10nov14:  delivery to S.F. ###############################################


9nov14
. now prevent occasional random look angle jumps
. redefined KOs the same everywhere to avoid getting
  "stuck" within margin of walls or ledges (I hope).

8nov14
. added kick sound

6nov14:
. added glenable(gl_multisample); glhint( *_smooth_hint, gl_nicest )
  which theoretically might enhance look, but unsure (@ line~526)
  I don't see improvement because I already use glfw hint to 
  set samples to 4 (line 356)

6nov14:  delivery to S.F. ########################################################

4nov14:
. redesigned puzzle data structures to facilitate reconfiguring;
. use simpler, higher type of walls;
. puzzle DegreeOfDifficulty [DOD] now under user control;
. 1st cmd.line.parm controls DOD level (1..3, 1=easy)

I might have fixed this:
. PROBLEM:  sound of lava quit before exit during 2nd portal.
...need to run more test cases...

3nov14:  delivery to S.F. #########################################################

2nov14:  
	. elliminated mplayer usage;  
	. replaced with SFML-Audio;
	. elliminated sysutils;
	. improved ocmp.sh by using SFML static libs;


31oct14: further code cleanup

30oct14: delivery to S.F. ###########################################################

26oct14:  
	. improved & simplified handling of moving barrels (cyl2obj)
		as per sokerban, rufasgate;
	. cleaned up ./libs/gl/ and ./libs/glfw/glfw-rufas.ads
		by adding gpl statement and removing glsc.ads
	. mentioned possible usage of Ada bindings in ./libs/ by other OpenGL apps


24oct14:  inserted factor of deltaT into speed of keyboard slew in order to
			normalize the slew speed over "heavy" fragment shaders.

23oct14:  clarified game intro (rufasgate too) and editted S.F. to match


22oct14:  delivery to S.F. ##########################################################

19oct14:
. restored music to levels 1,2,3;  which terminates at wormhole activation.
. bumped keyleft/right speed over reflective water by factor of two.
. removed put_lines from *obj.adb::finalize
. made sound4ada more robust in that it only selects the final line in the
  mp_pid.txt file, which should be the most recent instance of mplayer.
. sent mplayer output to 2> to cleanup the console window;
. inspected for various coding refinements, cleanup.
. sanitized glfw-rufas.ads;
. tested on MacBook.


19oct14:  delivery to S.F. #############################################################


19oct14
. test further;
. improved/updated READMEag.txt

. test on MacBook Retina:  proves forward_compat is REQUIRED!!!
  NOTE:  glfw-rufasgate also fails on MacBook when not forward_compat!  See:
  http://www.glfw.org/faq.html#how-do-i-create-an-opengl-30-context


18oct14:
	. added prolog
	. corrected index problem in circsurfobj.adb, circtexsurfobj.adb

2oct14:  
	. added copyleft notices to source
	. added lightweight update to reposition cyl2 barrels (as per rufasgate);
	. added necessary initializers at loop top ( [lr]port_stable := false )

1oct14:  delivery to s.f. (removed previous) ###############################################

1oct14:  created "rufas_ptr" in glfw-windows.ad? to use as
			c++ window pointer (for hiding cursor).  Used in glfw-rufas.ads
			NOTE:  use this if OTHER hidden C++ accessors are needed.

1oct14:  
	enabled reflective water !!! (an indexing error)
	added level 5 epilogue
	allowed concurrent moveForward + jump or turn


30sep14:  delivery to S.F.

30sep14   amazing progress;  moving along nicely.
	yet to do:
	. remove cursor
	. enable reflective water (separate test)

29sep14
	. failed in glfw.rufas.ad? to disable cursor.
	. found workaround for laptop cursor problem

28sep14 
	. cleaned up *obj.ad? to deallocate all arrays
	.
	. delivery to S.F.; note to felix/stephen
	. Also, note to felix asking for help with disabling cursor.


