 ____        _           _       _____      _                                
|  _ \      | |         ( )     |  __ \    | |                               
| |_) | __ _| |__   __ _|/ ___  | |__) |_ _| | __ _  ___ ___                 
|  _ < / _` | '_ \ / _` | / __| |  ___/ _` | |/ _` |/ __/ _ |                
| |_) | (_| | |_) | (_| | \__ \ | |  | (_| | | (_| | (_|  __/                
|____/ \__,_|_.__/ \__,_| |___/ |_|   \__,_|_|\__,_|\___\___|                

BABA'S PALACE 


Compilation instructions
------------------------
This video game has been developed using CPCtelera 1.4


1. INTRO:
make Z80CCFLAGS="--peep-file ${CPCT_PATH}/tools/sdcc-3.5.5/peep/z88dk_speculative_peepholes.def --max-allocs-per-node 2000000 --opt-code-size"

* Intro code starts at 0x4181 (defined in build_config.mk --> Z80CODELOC)
** The fist byte is located at 0x4000
*** Execution address is 0x48D8



2. GAME:
make Z80CCFLAGS="--peep-file ${CPCT_PATH}/tools/sdcc-3.5.5/peep/z88dk_speculative_peepholes.def --max-allocs-per-node 2000000 --opt-code-speed"

* The code starts at 0x56d6 (defined in build_config.mk --> Z80CODELOC)
** The fist byte is located at 0x0100
*** Execution address is 0x5173



3. BASIC LOADER
basic-loader.atp: The Basic code to load the game. This file can be loaded in Winape to auto-type this basic code, but you can open it with any text editor.



4. LOADSCREEN
screen.src: A binary that contains the load screen video memory.



* Please be patient. This compilation process will take about one hour, depending your computer speed, due to "--max-allocs-per-node" option. 
This compilation optimzation is mandatory in order to get a binary that can be executed on Amstrad with 64kb of memory.
And yes, you will see some warnings...
** Please consult CPCtelera Reference Manual in case of any doubt: http://lronaldo.github.io/cpctelera/files/readme-txt.html




Authors
-------
Code & Gfx Copyright (C) 2017 Rafael Castillo (@Azicuetano)
Music & Fx Copyright (C) 2017 John McKlain (@elmcklain)




Third Party source code used
----------------------------
Exomizer 2 Z80 decoder by Metalbrain, optimized by Antonio Villena and Urusergi. Compression algoritm by Magnus Lind.
decompress - Function to call Exomizer 2 Z80 decoder function from OUTLAWS, by Retrobytes Productions - GNU General Public License.
uitoa - Integer to string conversion written by Bela Torok - GNU General Public License.
waitAKey (esperaUnaTecla) - Function provided by Ronaldo on amstrad.es forums.
wait_n_VSYNCs - Function from CPCtelera examples medium > textscroll - GNU Lesser General Public License.
wait4UserKeypress - Function from CPCtelera examples easy > random - GNU Lesser General Public License.


BABA'S PALACE IS RELEASED UNDER GNU GENERAL PUBLIC LICENSE, VERSION 3. SOURCE CODE IS INCLUDED.
