Kategorien
Spiele

EXAPUNKS – Teil 3

Teil 3 meiner EXAPUNKS-Lösungen, Level 21-30

21 – Valhalla

Cycles: – / Size: – / Activity: –

; EXA 'XA'
; WAIT AND KILL
LINK 800
LINK -1
@REP 16
NOOP
@END
KILL

; TAKE OVER HOSTS
COPY 1 #CTRL
@REP 8
LINK 800
COPY 1 #CTRL
@END
HALT

22 – Mitsuzen HDI-10

Cycles: 267 / Size: 63 / Activity: 502

; EXA 'XA'
LINK 800
MARK LOOP
@REP 2
LINK -3
NOOP
@END
COPY #NERV X
@REP 4
LINK 3
NOOP
@END
COPY X #NERV
@REP 2
LINK -3
NOOP
@END
JUMP LOOP
; EXA 'XB'
LINK 800
MARK LOOP
@REP 3
LINK 3
@END
NOOP
COPY #NERV X
@REP 6
LINK -3
@END
NOOP
NOOP
COPY X #NERV
@REP 3
LINK 3
@END
NOOP
JUMP LOOP
; EXA 'XC'
LINK 800
MARK LOOP
@REP 4
LINK 3
@END
COPY #NERV X
@REP 8
LINK -3
@END
COPY X #NERV
@REP 4
LINK 3
@END
JUMP LOOP

23 – Sawayama Wonderdisc

Cycles: 6454 / Size: 46 / Activity: 63

; EXA 'RD'
;AUTH CODE
; 803271049512526

;UNLINK DEVICE
LINK 800
COPY 8 #AUTH
COPY 0 #AUTH
COPY 3 #AUTH
COPY 2 #AUTH
COPY 7 #AUTH
COPY 1 #AUTH
COPY 0 #AUTH
COPY 4 #AUTH
COPY 9 #AUTH
COPY 5 #AUTH
COPY 1 #AUTH
COPY 2 #AUTH
COPY 5 #AUTH
COPY 2 #AUTH
COPY 6 #AUTH

; READ TRACK
LINK 801
MARK LOOP
GRAB M
MARK LOOPTRACK
COPY F M
TEST EOF
FJMP LOOPTRACK
DROP
JUMP LOOP
; EXA 'WR'
; READ CODE
GRAB 300
COPY F X
DROP

; READ TRACK
LINK 800
MARK LOOP
COPY #TRAK M

MAKE
MARK LOOPTRACK
COPY M F
SEEK -1
TEST F > 0
TJMP CONT
SEEK -1
COPY X F

MARK CONT
TEST MRD
TJMP LOOPTRACK

; DELIVER FILE
LINK 800
DROP
LINK -1
JUMP LOOP

24 – Alliance Power and Light

Cycles: 41 / Size: 43 / Activity: 39

; EXA 'XA'
GRAB 300
LINK 800

; SEARCH FIRST HOST
COPY F X
REPL ROW2
REPL ROW3
REPL ROW4

; SEARCH SECOND HOST
COPY F X
REPL ROW2
REPL ROW3
REPL ROW4

; DESTROY ORIGINAL EXA
WIPE
HALT

MARK ROW2
LINK 800
REPL ROW1
JUMP CHECK

MARK ROW1
LINK 800
JUMP CHECK

MARK ROW3
JUMP CHECK

MARK ROW4
LINK 802
REPL ROW5
JUMP CHECK

MARK ROW5
LINK 802
JUMP CHECK

MARK CHECK
HOST T
TEST T = X
TJMP FOUND
LINK 801
JUMP CHECK

MARK FOUND
; DON'T #POWR TOO EARLY
@REP 7
NOOP
@END
COPY 0 #POWR

25 – Deadlock’s Domain

Cycles: – / Size: – / Activity: –

; EXA 'XA'
LINK 800
LINK 802
LINK 799
KILL
HALT
; EXA 'XB'
MARK LOOP
LINK 800
LINK 801
GRAB #FILE
LINK -1
LINK -1
DROP
JUMP LOOP

26 – Xtreme League Baseball

Cycles: 260 / Size: 62 / Activity: 2

; EXA 'CA'
LINK 800

MARK LOOPACTIVE

; GET FILE FROM PL
MODE

COPY M X
TEST X = -9999
TJMP FINISH

GRAB X

; TRANSFER NAME TO WR
MODE
COPY F M

COPY F X
ADDI X F X
ADDI X F X
DIVI X 3 X

COPY F T
MULI T F T
DIVI T F T

ADDI X T X

COPY F T
SUBI T F T
MULI T 20 T

ADDI X T X

DROP

; TRANSFER SCORE TO WR
COPY X M

JUMP LOOPACTIVE

MARK FINISH
MODE
COPY -9999 M
HALT
; EXA 'PL'
; PROCESS PLAYER LIST
MODE
LINK 800

GRAB 199

MARK LOOPFILE
COPY F M
TEST EOF
FJMP LOOPFILE

COPY -9999 M
HALT
; EXA 'WR'
MAKE

COPY M F
COPY M F

MARK LOOP

; CHECK IF FINISHED
COPY M X
TEST X = -9999
TJMP FINISH

COPY X F
COPY M X

SEEK -2
TEST X > F
TJMP BETTER

VOID F
JUMP LOOP

MARK BETTER
SEEK -2
VOID F
VOID F
SEEK 1
COPY X F
JUMP LOOP

MARK FINISH
SEEK -1
VOID F

HALT

27 – King’s Ransom Online

Cycles: 56 / Size: 42 / Activity: 25

; EXA 'XA'
; GET DESTINATION ID
MODE
GRAB 300
COPY F X
DROP
LINK 800

; PROCESS HOST
@REP 6
COPY @{800,1} T
REPL ENTERHOST
@END
HALT

MARK ENTERHOST
LINK T

; KILL PLAYER EXAS
@REP 3
KILL
@END

; NOOP UNTIL ALL KILLED
@REP 7
NOOP
@END

; ALWAYS START WITH 200
COPY 200 T

MARK EDITOR
GRAB T
SEEK 2
COPY X F
MARK LOOPFILE
COPY F T
REPL EDITOR
TEST EOF
FJMP LOOPFILE
DROP
HALT

28 – KGOG TV

Cycles: 889 / Size: 99 / Activity: 10

; EXA 'CA'
; CALCULATOR
LINK 800
LINK 799
MODE

; WAIT FOR WORK
MARK LOOP
TEST MRD
FJMP LOOP

; TEMPORARY FILE
MAKE
COPY M F
COPY M F

; PREVENT OVERFLOW IN 4
SEEK -2
SWIZ F 0004 X
SWIZ F 0004 T
ADDI X T X
SWIZ X 1000 X
; ADD 0321
SEEK -2
SWIZ F 0321 T
ADDI X T X
SWIZ F 0321 T
ADDI X T X

; SEND BACK RESULT
COPY X M
WIPE

JUMP LOOP
; EXA 'CO'
; CODE SENDER
LINK 800
GRAB 199

; WAIT FOR VI
MODE
VOID M
MODE

MARK LOOPCODE

; SEE IF WE'RE FINISHED
COPY M T
FJMP FINISHED

COPY F M
TEST EOF
FJMP LOOPCODE
; EOF = BACK TO START
SEEK -9999
JUMP LOOPCODE

MARK FINISHED
HALT
; EXA 'SC'
; SATTELITE CONFIG
GRAB 300
LINK 800
LINK 799

; SET AZIMUTH
SEEK 1
COPY F X
REPL SETAZIM

; SET ELEVATION
SEEK 1
COPY F X
REPL SETELEV

; SET FREQUENCY
SEEK 1
COPY F #FREQ

; SEND FINISHED
COPY -9999 M
WIPE
HALT

MARK SETAZIM
LINK 800
SUBI X #AZIM X
JUMP SETMOTOR

MARK SETELEV
LINK 801
SUBI X #ELEV X
JUMP SETMOTOR

MARK SETMOTOR
TEST X < 0
TJMP STEPMINUS

MARK STEPPLUS
TEST X = 0
TJMP FINISHED
COPY 1 #MOTR
SUBI X 1 X
JUMP STEPPLUS

MARK STEPMINUS
TEST X = 0
TJMP FINISHED
COPY -1 #MOTR
ADDI X 1 X
JUMP STEPMINUS

MARK FINISHED
; SEND FINISHED
COPY -9999 M
; EXA 'VI'
; VIDEO PROCESSOR
GRAB 301
; SKIP TITLE
SEEK 1

LINK 800

; WAIT UNTIL SATELLITE
@REP 3
VOID M
@END

; START CO
MODE
COPY -9999 M
MODE

; ON WE GO
LINK 799

MARK LOOPVIDEO
COPY 1 M
COPY M X
MODE
COPY X M
COPY F M
COPY M #DATA
MODE

TEST EOF
FJMP LOOPVIDEO

; SEND FINISHED
COPY 0 M
KILL
WIPE

29 – Equity First Bank

Cycles: 309 / Size: 51 / Activity: 2

; EXA 'AN'
; MODIFY ACCOUNTS
GRAB 300
; EMBERS ACCOUNT TO X
COPY F X
LINK 800
LINK 800
DROP

GRAB 199
MARK LOOPDEBIT
; FILE TO T
COPY F T
REPL MODIFYFILES
; SWITCH TO LOCAL
MODE
VOID M
; BACK TO GLOBAL
MODE
TEST EOF
FJMP LOOPDEBIT
; MANIPULATE DIRECTORY
SEEK 9999
COPY 300 F
DROP
; SEND FINISH TO CD
COPY 0 M
HALT

MARK MODIFYFILES
GRAB T
COPY F T
; ACCOUNT TO T
SEEK 9999
COPY X F
COPY 2 M
COPY M F
COPY 1 F
COPY 0 F
DROP

GRAB 300
SEEK 9999
COPY T F
COPY 1 M
COPY M F
COPY 1 F
COPY 0 F
DROP

; SEND FINISH TO PARENT
MODE
COPY 0 M

HALT
; EXA 'CD'
; SEND CREDIT OR DEBIT
GRAB 301

MARK LOOPFILE
COPY M T
FJMP FINISHED
SEEK -9999
SUBI T 1 T
SEEK T
COPY F M
JUMP LOOPFILE

MARK FINISHED
HALT

30 – The Wormhole

Cycles: – / Size: – / Activity: –

; EXA 'XA'
LINK 800

MARK LOOP

REPL LINK2
REPL LINK3
REPL LINK5
REPL LINK7
REPL LINK11
REPL LINK13
@REP 4
REPL SLEEP
@END

MARK SLEEP
JUMP SLEEP

MARK LINK2
LINK 2
JUMP LOOP
MARK LINK3
LINK 3
JUMP LOOP
MARK LINK5
LINK 5
JUMP LOOP
MARK LINK7
LINK 7
JUMP LOOP
MARK LINK11
LINK 11
JUMP LOOP
MARK LINK13
LINK 13

JUMP LOOP

 

Kommentar schreiben