furnace
advanced-furnace.mips
arc-furnace-room-control.mips
furnace-calc-pre.mips
furnace-ingot-recipe.mips
furnace-operate.mips
furnace-room-vacuum-pump.mips
hot-cold-waste-tank-manager.mips
hot-tank-filler.mips
pressurize-furnace.mips
waste-tank-to-cold-tank-with-chiller.mips
furnace-waste-chiller.mips

manufacturing
vend-ingots-to-printer.mips
vending-ore-counter-omni-fast.mips
vending-ore-counter-omni-slow.mips
vending-ore-counter-single.mipsr
vending-ore-counter-triple.mips

greenhouse
greenhouse-ac.mips
greenhouse-o2-pressure-display.mips
greenhouse-oxygen-harvest.mips
greenhouse-temperature.mips
harvie-triple.mips
seed-distributer.mips
seed-sorter-old.mips
seed-sorter.mips
stacker-vending-button.mips

atmospherics
base-atmosphere-control.mips
battery-room-atmosphere.mips
battery-room-vent-setter.mips
harvest-cold-atmosphere.mips
harvest-liquid-from-atmosphere.mips
refrigeration-room.mips

mining rocket
rocket-driving.mips
rocket-miner-readout.mips

ore warehousing
ore-sorter-multi.mips
ore-sorter2-multi.mips
gas-rock-sorter.mips
centrifuge-ore.mips

gas handling
gas-filter-chain.mips
co2-tank-pressure-management.mips
fuel-mixer.mips
gas-harvester.mips
gas-mixer-nitrous.mips
n2o-heater.mips
pump-feed-nitrolyzer.mips
show-gas-pressure-triple.mips
manage-coolant-from-atmosphere.mips

doors
weather-gate.mips
door-switch-logic.mips

solar
solar-old.mips
1-axis-solar-panel-control.mips
2-axis-solar-panel-control.mips

biomass fuel
biomass-generator-pipeline.mips
biomass-generator-silo.mips
biomass-recycler.mips
charcoal-stockpile-display.mips

AIMeE
aimee-old.mips
aimee-position-display.mips
aimee.mips


airlock-tank-accelerator-mgmt.mips
batch-solar-control.mips
centrifuge-miner-manager.mips
chamber-liquification-mgr.mips
cooling-gas-buffer-room.mips
cooling-gas-buffer.mips
display-avionics.mips
exhaust-gas-cooler-control.mips
fuel-mixer-n2o.mips
fuel-mixer-o2.mips
larre-config-1.mips
larre-farming-hardcoded.mips
larre-farming-stack.mips
light-console.manager.mips
light-manager.mips
loulan-airlock.mips
loulan-arc-furnace-room.mips
loulan-greenhouse.mips
measure-condensation-rate.mips
nitrolyzer-battery-threshold.mips
nitrous-warmer.mips
power-consumption-triple.mips
radiator-control.mips
simpler-gate.mips
sorter-feeding-autooven.mips
trader-scanner.mips
vend-ingots-to-printer-2.mips

alias vending d0
alias hash r15
alias qty r14
alias index r13
alias accum r12
alias scanslot r11
define LASTSLOT 100
define MAXINDEX 55
define MODULUS 54 # magic
define MEMORYHASH HASH("StructureLogicMemory")
define DISPHASH HASH("StructureConsoleLED5")
define ASTROLOYHASH 412924554
define CONSTANTANHASH 1058547521
define COPPERHASH -404336834
define ELECTRUMHASH 502280180
define GOLDHASH 226410516
define HASTELLOYHASH 1579842814
define INCONELHASH -787796599
define INVARHASH -297990285
define IRONHASH -1301215609
define LEADHASH 2134647745
define NICKELHASH -1406385572
define SILICONHASH -290196476
define SILVERHASH -929742000
define SOLDERHASH -82508479
define STEELHASH -654790771
define STELLITEHASH -1897868623
define WASPALOYHASH 156348098
start:


get r0 db 8
sbn DISPHASH HASH("display waspaloy") Setting r0
get r0 db 41
sbn DISPHASH HASH("display stellite") Setting r0
get r0 db 53
sbn DISPHASH HASH("display steel") Setting r0
get r0 db 11
sbn DISPHASH HASH("display solder") Setting r0
get r0 db 30
sbn DISPHASH HASH("display silver") Setting r0
get r0 db 10
sbn DISPHASH HASH("display silicon") Setting r0
get r0 db 40
sbn DISPHASH HASH("display nickel") Setting r0
get r0 db 43
sbn DISPHASH HASH("display lead") Setting r0
get r0 db 35
sbn DISPHASH HASH("display iron") Setting r0
get r0 db 21
sbn DISPHASH HASH("display invar") Setting r0
get r0 db 5
sbn DISPHASH HASH("display inconel") Setting r0
get r0 db 22
sbn DISPHASH HASH("display hastelloy") Setting r0
get r0 db 18
sbn DISPHASH HASH("display gold") Setting r0
get r0 db 44
sbn DISPHASH HASH("display electrum") Setting r0
get r0 db 46
sbn DISPHASH HASH("display copper") Setting r0
get r0 db 47
sbn DISPHASH HASH("display constantan") Setting r0
get r0 db 0
sbn DISPHASH HASH("display astroloy") Setting r0

yield

move sp 0
clear:
push 0
blt sp MAXINDEX clear

move scanslot 0
nextslot:

ls hash vending scanslot PrefabHash
ls qty vending scanslot Quantity

mod sp hash MODULUS
add sp sp 1

pop accum
add accum accum qty
push accum

empty:
s db Setting scanslot
add scanslot scanslot 1
ble scanslot LASTSLOT nextslot

j start

MIPS is the programming language used by IC (integrated circuits) in the game Stationeers. Stationeering web site has a MIPS emulator with syntax highlighting and error detection.