Files
RCBASIC4/rcbasic_build/main.rc_asm
2024-12-01 00:15:41 -05:00

1140 lines
13 KiB
Plaintext

.code
preset$ !0
preset !1
preset_t !0 !0
preset_t !1 !0
preset !2
preset !3
preset !4
preset !5
preset !6
preset !7
preset$ !2
preset !11
.code
mov$ s0 @0
print$ s0
println
mov$ s0 @1
print$ s0
println
mov$ s0 @30
mov n0 480
mov n1 320
mov n2 0
mov n3 1
mov$ !0 s0
mov !0 n0
mov !1 n1
mov !2 n2
mov !3 n3
func !124
pop n4
mov n0 !12
mov n1 !13
ptr !0 n0
ptr !1 n1
func !138
pop_ptr !2
mov$ s0 @42
print$ s0
mov n0 !12
print n0
mov$ s1 @54
print$ s1
mov n1 !13
print n1
println
mov n0 1024
mov n1 768
mov n2 20
mov n3 20
mov n4 200
mov n5 150
mov n6 0
mov !0 n0
mov !1 n1
mov !2 n2
mov !3 n3
mov !4 n4
mov !5 n5
mov !6 n6
func !174
pop n7
mov !14 n7
mov n0 50
mov n1 100
mov n2 !12
mov n3 100
mov n4 !13
mov n5 100
mov n6 0
sub n2 n3
sub n4 n5
mov !0 n0
mov !1 n1
mov !2 n2
mov !3 n4
mov !4 n6
func !176
pop n7
mov !15 n7
mov n0 !14
mov !0 n0
func !181
mov n0 !14
mov n1 0
mov !0 n0
mov !1 n1
func !191
func !185
mov n0 255
mov n1 255
mov n2 0
mov !0 n0
mov !1 n1
mov !2 n2
func !208
pop n3
mov !16 n3
mov n0 220
mov n1 220
mov n2 80
mov !0 n0
mov !1 n1
mov !2 n2
func !208
pop n3
mov !17 n3
mov n0 255
mov n1 0
mov n2 255
mov !0 n0
mov !1 n1
mov !2 n2
func !208
pop n3
mov !18 n3
mov n0 0
mov n1 255
mov n2 255
mov !0 n0
mov !1 n1
mov !2 n2
func !208
pop n3
mov !19 n3
mov n0 255
mov n1 0
mov n2 0
mov !0 n0
mov !1 n1
mov !2 n2
func !208
pop n3
mov !20 n3
mov n0 128
mov n1 128
mov n2 128
mov !0 n0
mov !1 n1
mov !2 n2
func !208
pop n3
mov !21 n3
mov n0 0
mov n1 0
mov n2 255
mov !0 n0
mov !1 n1
mov !2 n2
func !208
pop n3
mov !22 n3
mov n0 0
mov n1 0
mov n2 128
mov !0 n0
mov !1 n1
mov !2 n2
func !208
pop n3
mov !23 n3
mov n0 255
mov n1 128
mov n2 0
mov !0 n0
mov !1 n1
mov !2 n2
func !208
pop n3
mov !24 n3
mov n0 0
mov n1 0
mov n2 0
mov !0 n0
mov !1 n1
mov !2 n2
func !208
pop n3
mov !25 n3
mov n0 0
mov n1 255
mov n2 0
mov !0 n0
mov !1 n1
mov !2 n2
func !208
pop n3
mov !26 n3
mov n0 255
mov n1 255
mov n2 255
mov !0 n0
mov !1 n1
mov !2 n2
func !208
pop n3
mov !27 n3
mov n0 0
mov n1 0
mov n2 480
mov n3 320
mov !0 n0
mov !1 n1
mov !2 n2
mov !3 n3
func !196
pop n4
mov !28 n4
mov n0 !28
mov n1 0
mov !0 n0
mov !1 n1
func !191
mov n0 !28
mov !0 n0
func !181
mov n0 -1
mov !0 n0
func !532
mov$ s0 @57
mov$ !0 s0
func !211
pop n0
mov !29 n0
mov$ s0 @73
mov$ !0 s0
func !211
pop n0
mov !30 n0
mov n0 !30
mov !0 n0
func !161
mov n0 !29
mov n1 64
mov n2 64
mov !0 n0
mov !1 n1
mov !2 n2
func !448
pop n3
mov !31 n3
mov n0 !30
mov n1 32
mov n2 32
mov !0 n0
mov !1 n1
mov !2 n2
func !448
pop n3
mov !32 n3
mov n0 !31
mov n1 0
mov !0 n0
mov !1 n1
func !470
mov n0 !32
mov n1 45
mov !0 n0
mov !1 n1
func !456
mov n0 !32
mov n1 0
mov n2 2
mov !0 n0
mov !1 n1
mov !2 n2
func !450
mov n0 !31
mov n1 166
mov n2 167
mov !0 n0
mov !1 n1
mov !2 n2
func !450
mov n0 !32
mov n1 !33
mov n2 !34
mov !0 n0
ptr !1 n1
ptr !2 n2
func !452
pop_ptr !2
mov n0 !31
mov n1 !35
mov n2 !36
mov !0 n0
ptr !1 n1
ptr !2 n2
func !452
pop_ptr !2
mov$ s0 @86
print$ s0
mov n0 !33
print n0
mov$ s1 @99
print$ s1
mov n1 !34
print n1
mov$ s2 @102
print$ s2
mov n2 !35
print n2
mov$ s3 @106
print$ s3
mov n3 !36
print n3
mov$ s4 @109
print$ s4
println
mov n0 !32
mov !0 n0
func !453
pop n1
mov !33 n1
mov n0 !32
mov !0 n0
func !454
pop n1
mov !34 n1
mov n0 !31
mov !0 n0
func !453
pop n1
mov !35 n1
mov n0 !31
mov !0 n0
func !454
pop n1
mov !36 n1
mov$ s0 @111
print$ s0
mov n0 !33
print n0
mov$ s1 @124
print$ s1
mov n1 !34
print n1
mov$ s2 @127
print$ s2
mov n2 !35
print n2
mov$ s3 @131
print$ s3
mov n3 !36
print n3
mov$ s4 @134
print$ s4
println
mov n0 !32
mov n1 1
mov !0 n0
mov !1 n1
func !468
mov n0 !31
mov n1 1
mov !0 n0
mov !1 n1
func !468
mov n0 80
mov !39 n0
mov n0 !15
mov n1 3
mov !0 n0
mov !1 n1
func !191
mov$ s0 @136
mov$ !3 s0
mov$ s0 !3
mov n0 12
mov$ !0 s0
mov !0 n0
func !311
pop n1
mov !40 n1
mov n0 !14
mov !0 n0
func !181
mov n0 255
mov n1 255
mov n2 255
mov !0 n0
mov !1 n1
mov !2 n2
func !208
pop n3
mov !0 n3
func !203
mov n0 9
dim_str1 !4 n0
mov n0 0
obj_str1 !4 n0
obj_get$ s0
mov$ s1 @169
mov_r$ s0 s1
mov n0 1
obj_str1 !4 n0
obj_get$ s0
mov$ s1 @190
mov_r$ s0 s1
mov n0 2
obj_str1 !4 n0
obj_get$ s0
mov$ s1 @215
mov_r$ s0 s1
mov n0 3
obj_str1 !4 n0
obj_get$ s0
mov$ s1 @243
mov_r$ s0 s1
mov n0 4
obj_str1 !4 n0
obj_get$ s0
mov$ s1 @269
mov_r$ s0 s1
mov n0 5
obj_str1 !4 n0
obj_get$ s0
mov$ s1 @301
mov_r$ s0 s1
mov n0 !16
mov !0 n0
func !203
mov n0 0
mov n1 0
mov n2 100
mov n3 100
mov !0 n0
mov !1 n1
mov !2 n2
mov !3 n3
func !207
mov n0 62
mov n1 73
mov n2 57
mov n3 82
mov !0 n0
mov !1 n1
mov !2 n2
mov !3 n3
func !204
mov n0 0
mov n1 255
mov n2 0
mov !0 n0
mov !1 n1
mov !2 n2
func !208
pop n3
mov !0 n3
func !203
mov n0 0
mov n1 0
mov n2 300
mov n3 400
mov !0 n0
mov !1 n1
mov !2 n2
mov !3 n3
func !206
mov n0 0
mov n1 5
mov n2 1
for !41 n0 n1 n2
lval @main.#NEXT:0
label main.#FOR:0
mov n0 !41
mov n1 10
mov n2 10
mov n3 !41
mov n4 15
mul n3 n4
obj_str1 !4 n0
obj_get$ s0
add n2 n3
mov$ !0 s0
mov !0 n1
mov !1 n2
func !315
next @main.#FOR:0
label main.#NEXT:0
mov n0 !15
mov !0 n0
func !181
mov$ s0 @328
print$ s0
println
mov$ s0 @337
mov$ !0 s0
func !622
pop n0
mov !42 n0
mov$ s0 @354
print$ s0
println
mov n0 !42
mov !0 n0
func !632
pop n1
mov !43 n1
mov$ s0 @367
mov$ !0 s0
func !211
pop n0
mov !44 n0
mov$ s0 @384
print$ s0
println
mov n0 6
mov !45 n0
mov n0 0
mov !46 n0
mov$ s0 @387
print$ s0
println
mov n0 99.123
mov !45 n0
func !942
pop n0
mov$ s0 @390
print$ s0
mov n0 !46
print n0
println
mov n0 !46
mov n1 0
mov n2 !44
mov !0 n0
mov !1 n1
mov !2 n2
func !985
mov n0 !46
mov n1 0
mov !0 n0
mov !1 n1
func !975
mov n0 !43
mov n1 0
mov n2 !46
mov !0 n0
mov !1 n1
mov !2 n2
func !944
mov n0 !43
mov n1 0
mov !0 n0
mov !1 n1
func !945
pop n2
mov !47 n2
mov n0 !47
mov n1 0
mov !0 n0
mov !1 n1
func !975
mov n0 !43
mov n1 0
mov n2 150
mov n3 0
mov !0 n0
mov !1 n1
mov !2 n2
mov !3 n3
func !644
mov$ s0 @405
mov$ s1 @426
mov$ !0 s0
mov$ !1 s1
func !626
pop n0
mov !48 n0
mov n0 !48
mov !0 n0
func !633
pop n1
mov !49 n1
mov n0 !49
mov n1 1
mov !0 n0
mov !1 n1
func !679
mov n0 !49
mov n1 7
mov n2 0
mov !0 n0
mov !1 n1
mov !2 n2
func !677
mov n0 !15
mov !0 n0
func !181
mov n0 !43
mov n1 1160
mov n2 399
mov n3 2122
mov !0 n0
mov !1 n1
mov !2 n2
mov !3 n3
func !643
mov n0 !43
mov n1 0
mov n2 0
mov n3 0
mov !0 n0
mov !1 n1
mov !2 n2
mov !3 n3
func !650
mov n0 984
mov n1 488
mov n2 2303
mov !0 n0
mov !1 n1
mov !2 n2
func !842
mov n0 23
mov n1 1216
mov n2 0
mov !0 n0
mov !1 n1
mov !2 n2
func !845
mov n0 1
mov !53 n0
mov n0 0
mov !54 n0
mov n0 8
mov !58 n0
mov n0 !43
mov n1 0
mov n2 0
mov n3 0
mov !0 n0
mov !1 n1
mov !2 n2
mov !3 n3
func !682
mov n0 1
mov !59 n0
mov n0 -1
mov !60 n0
mov n0 !43
mov n1 !59
mov n2 !60
mov !0 n0
mov !1 n1
mov !2 n2
func !672
mov n0 1221
mov n1 424
mov n2 2163
mov !0 n0
mov !1 n1
mov !2 n2
func !842
mov n0 13
mov n1 1312
mov n2 0
mov !0 n0
mov !1 n1
mov !2 n2
func !845
mov n0 0
mov !61 n0
mov n0 0
mov !62 n0
mov n0 0
mov !63 n0
label main.#WHILE:0
mov n0 27
mov !0 n0
func !241
pop n1
not n1
while n1 @main.#WEND:0
mov n0 48
mov !0 n0
func !241
pop n1
cmp n1 0
je @ELSE:0->CONDITION:0
mov n0 0
mov !63 n0
jmp @ENDIF:0
label ELSE:0->CONDITION:0
mov n0 49
mov !0 n0
func !241
pop n1
cmp n1 0
je @ELSE:0->CONDITION:1
mov n0 1
mov !63 n0
label ELSE:0->CONDITION:1
label ENDIF:0
mov n0 !63
push n0
jmp @SELECT:0->CASE:0
jmp @SELECT:0->END
label SELECT:0->CASE:0
pop n0
push n0
mov n1 0
mov n2 0
cmp n0 n1
mov n3 %EQUAL_FLAG
or n2 n3
cmp n2 0
je @SELECT:0->CASE:1
mov n0 110
mov !0 n0
func !241
pop n1
cmp n1 0
je @ELSE:1->CONDITION:0
mov n0 !61
mov n1 1
add n0 n1
mov !61 n0
jmp @ENDIF:1
label ELSE:1->CONDITION:0
mov n0 109
mov !0 n0
func !241
pop n1
cmp n1 0
je @ELSE:1->CONDITION:1
mov n0 !61
mov n1 1
sub n0 n1
mov !61 n0
label ELSE:1->CONDITION:1
label ENDIF:1
mov n0 106
mov !0 n0
func !241
pop n1
cmp n1 0
je @ELSE:2->CONDITION:0
mov n0 !62
mov n1 1
add n0 n1
mov !62 n0
jmp @ENDIF:2
label ELSE:2->CONDITION:0
mov n0 107
mov !0 n0
func !241
pop n1
cmp n1 0
je @ELSE:2->CONDITION:1
mov n0 !62
mov n1 1
sub n0 n1
mov !62 n0
label ELSE:2->CONDITION:1
label ENDIF:2
mov n0 !61
mov n1 0
cmp n0 n1
mov n2 %LESS_FLAG
cmp n2 0
je @ELSE:3->CONDITION:0
mov n0 0
mov !61 n0
label ELSE:3->CONDITION:0
label ENDIF:3
mov n0 !62
mov n1 0
cmp n0 n1
mov n2 %LESS_FLAG
cmp n2 0
je @ELSE:4->CONDITION:0
mov n0 0
mov !62 n0
label ELSE:4->CONDITION:0
label ENDIF:4
mov n0 !14
mov n1 !61
mov n2 !62
mov !0 n0
mov !1 n1
mov !2 n2
func !182
mov n0 119
mov !0 n0
func !241
pop n1
cmp n1 0
je @ELSE:5->CONDITION:0
mov n0 !15
mov !0 n0
func !181
mov n0 0
mov n1 0
mov n2 10
mov !0 n0
mov !1 n1
mov !2 n2
func !844
jmp @ENDIF:5
label ELSE:5->CONDITION:0
mov n0 115
mov !0 n0
func !241
pop n1
cmp n1 0
je @ELSE:5->CONDITION:1
mov n0 !15
mov !0 n0
func !181
mov n0 0
mov n1 0
mov n2 -10
mov !0 n0
mov !1 n1
mov !2 n2
func !844
label ELSE:5->CONDITION:1
label ENDIF:5
mov n0 97
mov !0 n0
func !241
pop n1
cmp n1 0
je @ELSE:6->CONDITION:0
mov n0 !15
mov !0 n0
func !181
mov n0 -10
mov n1 0
mov n2 0
mov !0 n0
mov !1 n1
mov !2 n2
func !844
jmp @ENDIF:6
label ELSE:6->CONDITION:0
mov n0 100
mov !0 n0
func !241
pop n1
cmp n1 0
je @ELSE:6->CONDITION:1
mov n0 !15
mov !0 n0
func !181
mov n0 10
mov n1 0
mov n2 0
mov !0 n0
mov !1 n1
mov !2 n2
func !844
label ELSE:6->CONDITION:1
label ENDIF:6
mov n0 114
mov !0 n0
func !241
pop n1
cmp n1 0
je @ELSE:7->CONDITION:0
mov n0 !15
mov !0 n0
func !181
mov n0 !64
mov n1 !65
mov n2 !66
ptr !0 n0
ptr !1 n1
ptr !2 n2
func !843
pop_ptr !3
mov n0 !64
mov n1 !65
mov n2 10
mov n3 !66
add n1 n2
mov !0 n0
mov !1 n1
mov !2 n3
func !842
jmp @ENDIF:7
label ELSE:7->CONDITION:0
mov n0 102
mov !0 n0
func !241
pop n1
cmp n1 0
je @ELSE:7->CONDITION:1
mov n0 !15
mov !0 n0
func !181
mov n0 !67
mov n1 !68
mov n2 !69
ptr !0 n0
ptr !1 n1
ptr !2 n2
func !843
pop_ptr !3
mov n0 !67
mov n1 !68
mov n2 10
mov n3 !69
sub n1 n2
mov !0 n0
mov !1 n1
mov !2 n3
func !842
label ELSE:7->CONDITION:1
label ENDIF:7
mov n0 1073741906
mov !0 n0
func !241
pop n1
cmp n1 0
je @ELSE:8->CONDITION:0
mov n0 !15
mov !0 n0
func !181
mov n0 1
mov n1 0
mov n2 0
mov !0 n0
mov !1 n1
mov !2 n2
func !847
jmp @ENDIF:8
label ELSE:8->CONDITION:0
mov n0 1073741905
mov !0 n0
func !241
pop n1
cmp n1 0
je @ELSE:8->CONDITION:1
mov n0 !15
mov !0 n0
func !181
mov n0 -1
mov n1 0
mov n2 0
mov !0 n0
mov !1 n1
mov !2 n2
func !847
label ELSE:8->CONDITION:1
label ENDIF:8
mov n0 1073741904
mov !0 n0
func !241
pop n1
cmp n1 0
je @ELSE:9->CONDITION:0
mov n0 !15
mov !0 n0
func !181
mov n0 !70
mov n1 !71
mov n2 !72
ptr !0 n0
ptr !1 n1
ptr !2 n2
func !846
pop_ptr !3
mov n0 -1
mov n1 !70
mov n2 0
mov n3 0
mul n0 n1
mov !0 n0
mov !1 n2
mov !2 n3
func !847
mov n0 0
mov n1 -1
mov n2 0
mov !0 n0
mov !1 n1
mov !2 n2
func !847
mov n0 !70
mov n1 0
mov n2 0
mov !0 n0
mov !1 n1
mov !2 n2
func !847
jmp @ENDIF:9
label ELSE:9->CONDITION:0
mov n0 1073741903
mov !0 n0
func !241
pop n1
cmp n1 0
je @ELSE:9->CONDITION:1
mov n0 !15
mov !0 n0
func !181
mov n0 !73
mov n1 !74
mov n2 !75
ptr !0 n0
ptr !1 n1
ptr !2 n2
func !846
pop_ptr !3
mov n0 !73
mov n1 !74
mov n2 1
mov n3 !75
add n1 n2
mov !0 n0
mov !1 n1
mov !2 n3
func !845
label ELSE:9->CONDITION:1
label ENDIF:9
mov n0 122
mov !0 n0
func !241
pop n1
cmp n1 0
je @ELSE:10->CONDITION:0
mov n0 !43
mov n1 0
mov n2 10
mov n3 0
mov !0 n0
mov !1 n1
mov !2 n2
mov !3 n3
func !720
label ELSE:10->CONDITION:0
label ENDIF:10
mov n0 120
mov !0 n0
func !241
pop n1
cmp n1 0
je @ELSE:11->CONDITION:0
mov n0 !43
mov n1 60
mov n2 0
mov n3 0
mov !0 n0
mov !1 n1
mov !2 n2
mov !3 n3
func !718
label ELSE:11->CONDITION:0
label ENDIF:11
mov n0 99
mov !0 n0
func !241
pop n1
cmp n1 0
je @ELSE:12->CONDITION:0
mov n0 !43
mov n1 0
mov n2 60
mov n3 0
mov !0 n0
mov !1 n1
mov !2 n2
mov !3 n3
func !718
label ELSE:12->CONDITION:0
label ENDIF:12
jmp @SELECT:0->END
label SELECT:0->CASE:1
pop n0
push n0
mov n1 1
mov n2 0
cmp n0 n1
mov n3 %EQUAL_FLAG
or n2 n3
cmp n2 0
je @SELECT:0->CASE:2
mov n0 1073741904
mov !0 n0
func !241
pop n1
cmp n1 0
je @ELSE:13->CONDITION:0
mov n0 -1
mov n1 !39
mul n0 n1
mov !37 n0
jmp @ENDIF:13
label ELSE:13->CONDITION:0
mov n0 1073741903
mov !0 n0
func !241
pop n1
cmp n1 0
je @ELSE:13->CONDITION:1
mov n0 !39
mov !37 n0
label ELSE:13->CONDITION:1
label ENDIF:13
mov n0 1073741906
mov !0 n0
func !241
pop n1
cmp n1 0
je @ELSE:14->CONDITION:0
mov n0 -1
mov n1 !39
mul n0 n1
mov !38 n0
jmp @ENDIF:14
label ELSE:14->CONDITION:0
mov n0 1073741905
mov !0 n0
func !241
pop n1
cmp n1 0
je @ELSE:14->CONDITION:1
mov n0 !39
mov !38 n0
label ELSE:14->CONDITION:1
label ENDIF:14
mov n0 !32
mov n1 !37
mov n2 !38
mov !0 n0
mov !1 n1
mov !2 n2
func !490
label SELECT:0->CASE:2
label SELECT:0->END
pop n0
func !128
jmp @main.#WHILE:0
label main.#WEND:0
end