stationeers_ic10/auto_class_sorter.ic10

33 lines
733 B
Plaintext
Raw Normal View History

2022-01-17 14:47:25 +00:00
# Runs up to six sorters that filter throughput by ItemClass
# When looking at the outputs, left = ITEMCLASS, right = everything else
alias SlotOccupied r0
alias InputClass r1
alias IsClass r2
alias SorterCounter r3
2022-01-17 14:47:25 +00:00
move SorterCounter 0
2022-01-17 14:47:25 +00:00
define ITEMCLASS 19 # 10=ores, 19=ingots, 33=wrekage
define INPUTSLOT 0 # sorter input-slot
start:
2022-10-24 14:19:36 +00:00
bdseal dr3 sort
add SorterCounter SorterCounter 1
bgt SorterCounter 5 reset
2022-01-17 14:47:25 +00:00
j start
sort:
s dr3 Mode 2 # set sorter to IC mode
ls SlotOccupied dr3 INPUTSLOT Occupied # check if anything to sort
beqz SlotOccupied ra
ls InputClass dr3 INPUTSLOT Class
seq IsClass InputClass ITEMCLASS # change seq to sne to swap output ports
s dr3 Output IsClass
2022-01-17 14:47:25 +00:00
j ra
reset:
yield
move SorterCounter 0
2022-10-24 14:19:36 +00:00
j start