Not a member of Pastebin yet?
                        Sign Up,
                        it unlocks many cool features!                    
                - #Power Distribution Large LED Control Script v1
 - # by SemlerPDX Sept2023
 - #As seen in my Power Station Quick Clip video:
 - # https://youtu.be/s45vYXD6dSI
 - define CableAnalyzer 1036015121
 - define Button 491845673
 - define MediumLED -53151617
 - define LargeLED -1949054743
 - sb LargeLED Mode 2
 - sb LargeLED Color 6
 - alias ThisBut r10
 - alias ThisMax r11
 - alias ThisLED r12
 - alias AvgTotal r13
 - alias AvgCount r14
 - alias x r15
 - define ThisNet HASH("Cable Analyzer MAIN OUT")
 - #Clear the stack
 - move sp 0
 - define STACK 500
 - push 0
 - brlt sp STACK -1 #can use clr in latest version
 - #Initialize Stack to contain Averages
 - move sp 0
 - move AvgTotal 0
 - move AvgCount 0
 - start:
 - sb MediumLED Color 6 #REQUIRED!
 - move ThisLED HASH("LED Total Power Min")
 - lbn r0 LargeLED ThisLED Setting Maximum
 - beqzal r0 setMinDisplay
 - yield
 - move ThisLED HASH("LED Total Power Avg")
 - add sp sp 1
 - pop x
 - sub AvgTotal AvgTotal x
 - lbn x CableAnalyzer ThisNet PowerActual Maximum
 - push x
 - add AvgTotal AvgTotal x
 - max AvgCount AvgCount sp
 - brlt sp STACK 2
 - move sp 0
 - div x AvgTotal AvgCount
 - sbn LargeLED ThisLED Setting x
 - jal setDisplaysMinMax
 - j start
 - setDisplaysMinMax:
 - move ThisBut HASH("Button Total Power Max")
 - move ThisLED HASH("LED Total Power Max")
 - lbn r1 Button ThisBut Setting Maximum
 - bgtz r1 resetThisDisplay
 - move ThisMax HASH("LED Power Station Max")
 - lbn r1 MediumLED ThisMax Setting Maximum
 - add r0 0 r1
 - move ThisMax HASH("LED Greenhouse Max")
 - lbn r1 MediumLED ThisMax Setting Maximum
 - add r0 r0 r1
 - move ThisMax HASH("LED Workshop Max")
 - lbn r1 MediumLED ThisMax Setting Maximum
 - add r0 r0 r1
 - move ThisMax HASH("LED Mining Max")
 - lbn r1 MediumLED ThisMax Setting Maximum
 - add r0 r0 r1
 - move ThisMax HASH("LED Furnace Max")
 - lbn r1 MediumLED ThisMax Setting Maximum
 - add r0 r0 r1
 - move ThisMax HASH("LED Spaceport Max")
 - lbn r1 MediumLED ThisMax Setting Maximum
 - add r0 r0 r1
 - lbn r1 LargeLED ThisLED Setting Maximum
 - bge r1 r0 setDisplaysMin #bypass if max is greater
 - #Set new Maximum to Power Consumption Display
 - sbn LargeLED ThisLED Setting r0
 - setDisplaysMin:
 - move ThisBut HASH("Button Total Power Min")
 - move ThisLED HASH("LED Total Power Min")
 - lbn r1 Button ThisBut Setting Maximum
 - bgtz r1 resetThisDisplay
 - lbn r0 CableAnalyzer ThisNet PowerActual Maximum
 - lbn r1 LargeLED ThisLED Setting Maximum
 - select r1 r1 r1 r0
 - ble r1 r0 ra #bypass if min is already lesser
 - #Set new Minimum to Power Consumption Display
 - sbn LargeLED ThisLED Setting r0
 - j ra
 - resetThisDisplay:
 - sbn LargeLED ThisLED Color 1
 - sbn LargeLED ThisLED Setting 0
 - sleep 2
 - j start
 - setMinDisplay:
 - lbn r0 CableAnalyzer ThisNet PowerActual Maximum
 - sbn LargeLED ThisLED Setting r0
 - j ra
 
Advertisement
 
                    Add Comment                
                
                        Please, Sign In to add comment