BizHawk/waterbox
nattthebear 440a340cb5 remove what should have been ignored 2020-06-20 13:49:58 -04:00
..
emulibc faust - memory domains, input callbacks, lag flags 2020-05-30 11:09:26 -04:00
gpgx Port upstream gpgx commit 2020-05-21 10:39:59 -04:00
libco Improve waterbox "lazystates" 2020-06-04 12:13:28 -04:00
libcxx remove cgc (step 1) 2020-06-20 00:48:42 -04:00
libsnes milestone: vb and ngp compile 2020-05-25 12:49:30 -04:00
linguard savestates on waterbox 2020-06-07 09:26:08 -04:00
llvm-project@eaae6dfc54 Move llvm to submodule 2020-06-19 20:56:17 -04:00
musl@1020370fb2 waterbox buildscript changes 2020-06-14 12:35:18 -04:00
nyma nyma big setting update 2020-06-14 16:02:33 -04:00
pcfx milestone: vb and ngp compile 2020-05-25 12:49:30 -04:00
picodrive 32x - fix crash, fixes #1826 2020-05-21 10:04:12 -04:00
sameboy waterbox sgb sameboy - fix stereo audio 2020-06-06 07:55:21 -04:00
snes9x@172f73b711 snes9x - take advantage of new waterbox change tracking to fix special chip games 2020-06-03 19:25:58 -04:00
ss milestone: vb and ngp compile 2020-05-25 12:49:30 -04:00
thunk linux: support gpgx 2020-06-06 18:25:59 -04:00
uzem milestone: vb and ngp compile 2020-05-25 12:49:30 -04:00
vb milestone: vb and ngp compile 2020-05-25 12:49:30 -04:00
waterboxhost remove what should have been ignored 2020-06-20 13:49:58 -04:00
winguard waterbox - track writes for smaller savestates 2020-06-03 07:13:40 -04:00
.gitignore Revamp waterbox build environment and runtime. (#2027) 2020-05-20 15:34:24 -04:00
common.mak waterbox: minor makefile tweak 2020-06-03 17:57:31 -04:00
linkscript.T waterbox: fix linker script putting __eh_frame_hdr_start in the wrong place 2020-05-25 21:02:01 -04:00
readme.txt doc cleanup 2020-06-20 05:59:43 -04:00
waterbox-Makefile.all makefile to build all waterbox cores 2019-12-24 14:29:28 -05:00

readme.txt

This is the native side of the experimental "waterbox" project for bizhawk.
It consists of a modified musl libc, and build scripts to tie it all together.


1. Set up your platform.
	The prescribed possibilities are not exhaustive. Other platforms may work.
	Here are the supported alternatives:

	PREPARE A WIN10 WORKSTATION:
	Using the guidance at (https://docs.microsoft.com/en-us/windows/wsl/wsl2-kernel & https://docs.microsoft.com/en-us/windows/wsl/install-win10):
	1. Install WSL2 
	2. Install Ubuntu 20.04 LTS (https://www.microsoft.com/en-us/p/ubuntu-2004-lts/9n6svws3rx71)
	3. Clone the bizhawk repository. You can use it through /mnt or /home if you really like 
	4. Install build tools: sudo apt-get update && sudo apt-get install gcc g++ make cmake

	PREPARE A WIN10 VM:
	1. Make sure the VM has virtualization enabled on the guest. For example in VMWare Workstation, "Virtualize Intel VT-X/EPT or AMD-V/RVI"
	2. Follow WIN10 Workstation preparation guide
	3. If you wish to clone bizhawk on your host system, you can use a VMWare shared folder and: `sudo mount -t drvfs Z: /mnt/z -o metadata` (WSL won't auto-mount the shared drive)
	3b. NO: it doesnt work. using `sudo nano /etc/fstab` you can add a line in this format: `Z: /mnt/z drvfs rw,relatime 0 0` (and then reboot your windows system) to get it to auto-mount

	PREPARE A LINUX WORKSTATION:
	1. TODO. This should work, but no one has tested it yet

2. Build libraries.
	cd musl
	./configure-for-waterbox
	make
	make install
	cd ../emulibc
	make
	cd ../libco
	make
	cd ../libcxx
	./do-everything.sh
	cd ..

3. You are now ready to start building cores. Each supports `make` and `make install`, as well as `make debug` and `make install-debug` for local development.  From the root directory, the following should all be valid:
	cd gpgx && make install
	cd libsnes && make install
	cd nyma && make -f faust.mak install
	cd nyma && make -f ngp.mak install
	cd nyma && make -f pce.mak install
	cd pcfx && make install
	cd picodrive && make install
	cd sameboy && make install
	cd snes9x && make install
	cd ss && make install
	cd uzem && make install
	cd vb && make install