// Author: Uberteg
;
num Uberteg		= 0x01;
num nTpsFuel		= 0x7A0D;
num nMainFuel		= 0x7A0F;
num nColdFuel		= 0x7A11;

num hTPSFuel		= -1;
num hMainFuel		= -1;
num hColdFuel		= -1;

void open()
{
	num x = 10;
	num y = 110;

	CreateBorder(x, y, 200, 100, 6, 0, "Fuel Mod");
	CreateStatic(x+5, y-5, 100, 20, 6, 0, "Fuel Modifiers");
	
	x = x + 20;
	y = y + 20;
	hTPSFuel = CreateEdit(x, y, 40, 20, 6, 0, "");
	CreateStatic(x+50, y, 90, 20, 6, 0, "TPS Enrich");
	setitem(hTPSFuel, readword(nTpsFuel) / 0x8000 / 100);

	y = y + 20;
	hColdFuel = CreateEdit(x, y, 40, 20, 6, 0, "");
	CreateStatic(x+50, y, 90, 20, 6, 0, "Cold Enrich");
	setitem(hColdFuel, readword(nColdFuel) / 0x8000 / 100);

	y = y + 20;
	hMainFuel = CreateEdit(x, y, 40, 20, 6, 0, "");
	CreateStatic(x+50, y, 90, 20, 6, 0, "Main Enrich");
	setitem(hMainFuel, readword(nMainFuel) / 0x8000 / 100);
}

void DisableCRC()						// bit of a hack, this function is called when the rom is being converted to an uberdata rom
{
	writeword(nTpsFuel, 0x8000);
	writeword(nMainFuel, 0x8000);
	writeword(nColdFuel, 0x8000);

	assemble("tpsfuel.asm", 0x7500);
	writebyte(0x14AC, 0x03);
	writeword(0x14AD, 0x7500);

	assemble("coldfuel.asm", 0x7580);
	writebyte(0x1468, 0x03);
	writeword(0x1469, 0x7580);

	assemble("mainfuel.asm", 0x7600);
	writeword(0x129B, 0x7600);
}

void save()
{
	writeword(nTpsFuel, 0x8000 * getitem(hTPSFuel) / 100);
	writeword(nMainFuel, 0x8000 * getitem(hMainFuel) / 100);
	writeword(nColdFuel, 0x8000 * getitem(hColdFuel) / 100);
}