	1 * 1	01 04 04 06
	1 images/vehicles.pcx  21  467 01  37  29 -24 -18 // 042D x, steam crawler N - empty
	1 images/vehicles.pcx  56  467 01  37  29  -4 -17 // 042E y, steam crawler N - empty
	1 images/vehicles.pcx  21  414 01  37  29 -24 -18 // 042F x, crawler crane N - empty
	1 images/vehicles.pcx  56  414 01  37  29  -4 -17 // 0430 y, crawler crane N - empty
	1 images/vehicles.pcx  21  368 01  25  28 -23  -3 // 0431 x, log loader N - empty
	1 images/vehicles.pcx  55  368 01  25  28 -10  -9 // 0432 y, log loader N - empty

	1 images/vehicles.pcx  91  467 01  40  54 -24 -18 // 042D x, steam crawler N - level 1
	1 images/vehicles.pcx 151  467 01  47  37 -12 -17 // 042E y, steam crawler N - level 1
	1 images/vehicles.pcx  91  414 01  40  54 -24 -18 // 042F x, crawler crane N - level 1
	1 images/vehicles.pcx 151  414 01  47  37 -12 -17 // 0430 y, crawler crane N - level 1
	1 images/vehicles.pcx  89  368 01  25  53 -23  -3 // 0431 x, log loader N - level 1
	1 images/vehicles.pcx 148  368 01  39  33 -15  -9 // 0432 y, log loader N - level 1

	1 images/vehicles.pcx 194  467 01  48  54 -24 -18 // 042D x, steam crawler N - level 2
	1 images/vehicles.pcx 254  467 01  47  51 -25 -17 // 042E y, steam crawler N - level 2
	1 images/vehicles.pcx 194  414 01  48  54 -24 -18 // 042F x, crawler crane N - level 2
	1 images/vehicles.pcx 254  414 01  47  51 -25 -17 // 0430 y, crawler crane N - level 2
	1 images/vehicles.pcx 187  368 01  33  53 -23  -3 // 0431 x, log loader N - level 2
	1 images/vehicles.pcx 246  368 01  39  43 -25  -9 // 0432 y, log loader N - level 2

	1 images/vehicles.pcx 311  467 01  48  54 -24 -18 // 042D x, steam crawler N - level 3
	1 images/vehicles.pcx 371  467 01  47  54 -29 -17 // 042E y, steam crawler N - level 3
	1 images/vehicles.pcx 311  414 01  48  54 -24 -18 // 042F x, crawler crane N - level 3
	1 images/vehicles.pcx 371  414 01  47  54 -29 -17 // 0430 y, crawler crane N - level 3
	1 images/vehicles.pcx 295  368 01  33  53 -23  -3 // 0431 x, log loader N - level 3
	1 images/vehicles.pcx 354  368 01  39  47 -29  -9 // 0432 y, log loader N - level 3

	1 * 1	02 04 10 // ID
		0E 01
		\w0 \w1 \w1 \w1 \w1 \w1 \w2 \w2 \w2 \w2 \w2 \w3 \w3 \w3
		\w3

	1 * 1	02 04 11 // ID
		0E 01
		\w0 \w0 \w1 \w1 \w1 \w1 \w1 \w2 \w2 \w2 \w2 \w2 \w3 \w3
		\w3

	1 * 1	02 04 12 // ID
		0E 01
		\w0 \w0 \w0 \w1 \w1 \w1 \w1 \w1 \w2 \w2 \w2 \w2 \w2 \w3
		\w3

	1 * 1	02 04 13 // ID
		0E 01
		\w0 \w0 \w0 \w0 \w1 \w1 \w1 \w1 \w1 \w2 \w2 \w2 \w2 \w2
		\w3

	1 * 1	02 04 00 // ID
		80
		00 // no more cargo (triggered by random in graphics chain)
		12 // use bits 18 and 19
		04
		\wx0010
		\wx0011
		\wx0012
		\wx0013

	1 * 1	02 04 01 // ID
		00 01
		\w0


	1 * 1	00 04 0A 01 LOG_LOADER
		08 "ISRR"

		// Sprite layout
		1A 02
			// 00 (x)
			42
			\dx00000F8D \wx0002 // ground sprite
			10 // register
			\dx8000042D \wx0040 // ground overlay sprite (child)
			00 00 80 // x/y/z offset
			04 // value for variable 10
			\dx8000042D \wx0002 // log loader
			00 00 00 // x/y/z offset
			10 10 17 // x/y/z extent
			11 // register

			// 01 (y)
			42
			\dx00000F8D \wx0002 // ground sprite
			10 // register
			\dx8000042D \wx0040 // ground overlay sprite (child)
			00 00 80 // x/y/z offset
			04 // value for variable 10
			\dx8000042E \wx0002 // log loader
			00 00 00 // x/y/z offset
			10 10 17 // x/y/z extent
			11 // register

		0B 02 // use callback to determine layout

		// Only allow a 1 x 1 layout
		0C FE
		0D FE

		10 \w400 // set little/lots threshold

		12 \dx00080080 // cargo types for randomisation triggers

		11 00 // no pylons
		14 FF // no wires

		// Prevent trains entering the tile from any direction
		15 FF // prevent trains entering the tile from any direction


	// Test variable 10 for real sprites
	1 * 1	02 04 1B // ID
		81 10 // additional information for sprite selection
		00 0F
		01
		\wx00FF 04 04 // ground overlay sprites
		\wx0000 // crane sprites

	// No suitable cargo
	// Test variable 10 for real sprites
	1 * 1	02 04 1A // ID
		81 10 // additional information for sprite selection
		00 0F
		01
		\wx00FF 04 04 // ground overlay sprites
		\wx0001 // crane sprites

	// Sprite offset for date
	1 * 1	02 04 08 // ID
		85 FA // date station was built
		00 \wxFFFF
		02
		\wx8000 \w0 \w01/01/1952
		\wx8002 \w02/01/1952 \w01/01/1995
		\wx8004

	// Sprite offset for date - purchase
	1 * 1	02 04 09 // ID
		85 00 // current date
		00 \wxFFFF
		02
		\wx8000 \w0 \w01/01/1952
		\wx8002 \w02/01/1952 \w01/01/1995
		\wx8004

//@@WARNING DISABLE 100
//@@WARNING DISABLE 170

	1 * 1	02 04 20 // ID
		85
		7E 08 // get date type offset
		20 \wx7FFF
		\2sto 1A
		20 \wx0011 // store in register - crane type offset
		\2rst
		7E BF // get normal/snow/desert offset
		20 \wx7FFF
		\2sto 1A
		00 \wx0010 // store in register - ground sprite offset
		01
		\wx001B \w0 \w0
		\wx001B

	// Empty
	1 * 1	02 04 22 // ID
		85
		7E 08 // get date type offset
		20 \wx7FFF
		\2sto 1A
		20 \wx0011 // store in register - crane type offset
		\2rst
		7E BF // get normal/snow/desert offset
		20 \wx7FFF
		\2sto 1A
		00 \wx0010 // store in register - ground sprite offset
		01
		\wx001A \w0 \w0
		\wx001A

	//Purchase
	1 * 1	02 04 21 // ID
		85
		7E 09 // get date type offset
		20 \wx7FFF
		\2sto 1A
		20 \wx0011 // store in register - crane type offset
		\2rst
		1A // all bits on
		20 \w0 // val = 0
		\2sto 1A
		00 \wx0010 // store in register - ground sprite offset
		01
		\wx001B \w0 \w0
		\wx001B

//@@WARNING ENABLE 100
//@@WARNING ENABLE 170

	1 * 1	02 04 10 // ID
		81 0C // callback
		00 FF
		01
		\wx8000 14 14 // sprite layout
		\wx0020 // real sprites

	// For purchase list
	1 * 1	02 04 11 // ID
		81 0C // callback
		00 FF
		01
		\wx8000 14 14 // sprite layout
		\wx0021 // real sprites

//@@WARNING DISABLE 113

	// Random action 2 outside callback triggers re-randomisation
	1 * 1	02 04 07 // ID
		80
		02 // no more cargo
		12 // trigger bits 18 and 19
		04
		\wx0022
		\wx0022
		\wx0022
		\wx0022

//@@WARNING ENABLE 113

	// No suitable cargo
	1 * 1	02 04 12 // ID
		81 0C // callback
		00 FF
		01
		\wx8000 14 14 // sprite layout
		\wx0007 // real sprites

	1 * 1	03 04
		01 LOG_LOADER
		02
		07 \wx0010 // wood
		FF \wx0011 // purchase list
		\wx0012 // no suitable cargo


	1 * 1	01 04 04 04
	1 images/vehicles.pcx  21  561 01  23  28 -13  -5 // 042D x, log stacker S old - empty
	1 images/vehicles.pcx  54  561 01  23  29 -25  -1 // 042E y, log stacker S old - empty
	1 images/vehicles.pcx  21  520 01  23  28 -13  -5 // 042F x, log stacker S new - empty
	1 images/vehicles.pcx  54  520 01  23  29 -25  -1 // 0430 y, log stacker S new - empty

	1 images/vehicles.pcx  88  561 01  35  45 -17  -5 // 042D x, log stacker S old - level 1
	1 images/vehicles.pcx 138  561 01  31  40 -25  -1 // 042E y, log stacker S old - level 1
	1 images/vehicles.pcx  88  520 01  35  45 -17  -5 // 042F x, log stacker S new - level 1
	1 images/vehicles.pcx 138  520 01  31  40 -25  -1 // 0430 y, log stacker S new - level 1

	1 images/vehicles.pcx 183  561 01  35  52 -24  -5 // 042D x, log stacker S old - level 2
	1 images/vehicles.pcx 240  561 01  31  40 -25  -1 // 042E y, log stacker S old - level 2
	1 images/vehicles.pcx 183  520 01  35  52 -24  -5 // 042F x, log stacker S new - level 2
	1 images/vehicles.pcx 240  520 01  31  40 -25  -1 // 0430 y, log stacker S new - level 2

	1 images/vehicles.pcx 285  561 01  35  56 -28  -5 // 042D x, log stacker S old - level 3
	1 images/vehicles.pcx 346  561 01  31  58 -25  -1 // 042E y, log stacker S old - level 3
	1 images/vehicles.pcx 285  520 01  35  56 -28  -5 // 042F x, log stacker S new - level 3
	1 images/vehicles.pcx 346  520 01  31  58 -25  -1 // 0430 y, log stacker S new - level 3

	1 * 1	02 04 10 // ID
		0E 01
		\w0 \w1 \w1 \w1 \w1 \w1 \w2 \w2 \w2 \w2 \w2 \w3 \w3 \w3
		\w3

	1 * 1	02 04 11 // ID
		0E 01
		\w0 \w0 \w1 \w1 \w1 \w1 \w1 \w2 \w2 \w2 \w2 \w2 \w3 \w3
		\w3

	1 * 1	02 04 12 // ID
		0E 01
		\w0 \w0 \w0 \w1 \w1 \w1 \w1 \w1 \w2 \w2 \w2 \w2 \w2 \w3
		\w3

	1 * 1	02 04 13 // ID
		0E 01
		\w0 \w0 \w0 \w0 \w1 \w1 \w1 \w1 \w1 \w2 \w2 \w2 \w2 \w2
		\w3

	1 * 1	02 04 00 // ID
		80
		00 // no more cargo (triggered by random in graphics chain)
		12 // use bits 18 and 19
		04
		\wx0010
		\wx0011
		\wx0012
		\wx0013

	1 * 1	02 04 01 // ID
		00 01
		\w0


	1 * 1	00 04 0A 01 LOG_STACKER
		08 "ISRR"

		// Sprite layout
		1A 02
			// 00 (x)
			42
			\dx00000F8D \wx0002 // ground sprite
			10 // register
			\dx8000042D \wx0040 // ground overlay sprite (child)
			00 00 80 // x/y/z offset
			04 // value for variable 10
			\dx8000042D \wx0002 // log stacker
			00 00 00 // x/y/z offset
			10 10 17 // x/y/z extent
			11 // register

			// 01 (y)
			42
			\dx00000F8D \wx0002 // ground sprite
			10 // register
			\dx8000042D \wx0040 // ground overlay sprite (child)
			00 00 80 // x/y/z offset
			04 // value for variable 10
			\dx8000042E \wx0002 // log stacker
			00 00 00 // x/y/z offset
			10 10 17 // x/y/z extent
			11 // register

		0B 03 // use callback to determine date availability (1) and layout (2)

		// Only allow a 1 x 1 layout
		0C FE
		0D FE

		// Set little / lots threshold
		10 \w400 // set little/lots threshold

		12 \dx00080080 // cargo types for randomisation triggers

		11 00 // no pylons
		14 FF // no wires

		15 FF // prevent trains entering the tile from any direction


	// Test variable 10 for real sprites
	1 * 1	02 04 1B // ID
		81 10 // additional information for sprite selection
		00 0F
		01
		\wx00FF 04 04 // ground overlay sprites
		\wx0000 // log stacker sprites

	// No suitable cargo
	// Test variable 10 for real sprites
	1 * 1	02 04 1A // ID
		81 10 // additional information for sprite selection
		00 0F
		01
		\wx00FF 04 04 // ground overlay sprites
		\wx0001 // log stacker sprites

	// Sprite offset for date
	1 * 1	02 04 08 // ID
		85 FA // date station was built
		00 \wxFFFF
		01
		\wx8000 \w0 \w01/01/1980
		\wx8002

	// Sprite offset for date - purchase
	1 * 1	02 04 09 // ID
		85 00 // current date
		00 \wxFFFF
		01
		\wx8000 \w0 \w01/01/1980
		\wx8002

//@@WARNING DISABLE 100
//@@WARNING DISABLE 170

	1 * 1	02 04 20 // ID
		85
		7E 08 // get date type offset
		20 \wx7FFF
		\2sto 1A
		20 \wx0011 // store in register - stacker type offset
		\2rst
		7E BF // get normal/snow/desert offset
		20 \wx7FFF
		\2sto 1A
		00 \wx0010 // store in register - ground sprite offset
		01
		\wx001B \w0 \w0
		\wx001B

	// Empty
	1 * 1	02 04 22 // ID
		85
		7E 08 // get date type offset
		20 \wx7FFF
		\2sto 1A
		20 \wx0011 // store in register - stacker type offset
		\2rst
		7E BF // get normal/snow/desert offset
		20 \wx7FFF
		\2sto 1A
		00 \wx0010 // store in register - ground sprite offset
		01
		\wx001A \w0 \w0
		\wx001A

	//Purchase
	1 * 1	02 04 21 // ID
		85
		7E 09 // get date type offset
		20 \wx7FFF
		\2sto 1A
		20 \wx0011 // store in register - stacker type offset
		\2rst
		1A // all bits on
		20 \w0 // val = 0
		\2sto 1A
		00 \wx0010 // store in register - ground sprite offset
		01
		\wx001B \w0 \w0
		\wx001B

//@@WARNING ENABLE 100
//@@WARNING ENABLE 170

	// Check for availability
	1 * 1	02 04 0C // ID
		81 01 // current year
		00 FF
		01
		\wx8000 \b0 \b1950 // do not allow build before 1950
		\wx8001

	1 * 1	02 04 10 // ID
		81 0C // callback
		00 FF
		01
		\wx8000 14 14 // sprite layout
		\wx0020 // real sprites

	// For purchase list
	1 * 1	02 04 11 // ID
		81 0C // callback
		00 FF
		02
		\wx000C 13 13 // date availability
		\wx8000 14 14 // sprite layout
		\wx0021 // real sprites

//@@WARNING DISABLE 113

	// Random action 2 outside callback triggers re-randomisation
	1 * 1	02 04 07 // ID
		80
		02 // no more cargo
		12 // trigger bits 18 and 19
		04
		\wx0022
		\wx0022
		\wx0022
		\wx0022

//@@WARNING ENABLE 113

	// No suitable cargo
	1 * 1	02 04 12 // ID
		81 0C // callback
		00 FF
		01
		\wx8000 14 14 // sprite layout
		\wx0007 // real sprites

	1 * 1	03 04
		01 LOG_STACKER
		02
		07 \wx0010 // wood
		FF \wx0011 // purchase list
		\wx0012 // no suitable cargo
