Data update
This commit is contained in:
parent
157b70a810
commit
8e4e15fa56
78 changed files with 2016 additions and 222 deletions
50
Task/Execute-Brain-/SmileBASIC/execute-brain--1.basic
Normal file
50
Task/Execute-Brain-/SmileBASIC/execute-brain--1.basic
Normal file
|
|
@ -0,0 +1,50 @@
|
|||
CLEAR
|
||||
|
||||
CODE$="++++++++[>++++[>++>+++>+++>+<<<<-]>+>+>->>+[<]<-]>>.>---.+++++++..+++.>>.<-.<.+++.------.--"
|
||||
CODE$=CODE$+"------.>>+.>++."
|
||||
|
||||
INPUT$=""
|
||||
II=0 'INPUT INDEX
|
||||
|
||||
PIM TAPE(30000)
|
||||
P=0
|
||||
|
||||
FOR I=0 TO LEN(CODE$)-1
|
||||
|
||||
C$=MID$(CODE$, I, 1)
|
||||
IF C$==">" THEN P=P+1
|
||||
IF C$=="<" THEN P=P-1
|
||||
IF C$=="+" THEN TAPE(P)=TAPE(P)+1
|
||||
IF C$=="-" THEN TAPE(P)=TAPE(P)-1
|
||||
IF C$=="." THEN PRINT CHR$(TAPE(P));
|
||||
IF C$=="," THEN @COMMA
|
||||
IF C$=="[" AND TAPE(P)==0 THEN @LBRACKET
|
||||
IF C$=="]" AND TAPE(P)!=0 THEN @RBRACKET
|
||||
GOTO @NEXT
|
||||
|
||||
@COMMA
|
||||
TAPE(P)=ASC(MID$(INPUT$, II, 1))
|
||||
II=II+1
|
||||
GOTO @NEXT
|
||||
|
||||
@LBRACKET
|
||||
NEST = 1
|
||||
@FINDR
|
||||
I=I+1
|
||||
C$=MID$(CODE$, I, 1)
|
||||
IF C$=="[" THEN NEST=NEST+1
|
||||
IF C$=="]" THEN NEST=NEST-1
|
||||
IF NEST THEN @FINDR
|
||||
GOTO @NEXT
|
||||
|
||||
@RBRACKET
|
||||
NEST=1
|
||||
@FINDL
|
||||
I=I-1
|
||||
C$=MID$(CODE$, I, 1)
|
||||
IF C$=="[" THEN NEST=NEST-1
|
||||
IF C$=="]" THEN NEST=NEST+1
|
||||
IF NEST THEN @FINDL
|
||||
|
||||
@NEXT
|
||||
NEXT
|
||||
45
Task/Execute-Brain-/SmileBASIC/execute-brain--2.basic
Normal file
45
Task/Execute-Brain-/SmileBASIC/execute-brain--2.basic
Normal file
|
|
@ -0,0 +1,45 @@
|
|||
DEF BRAINFUG CODE$, IN$
|
||||
DIM TAPE[30000]
|
||||
VAR PNT
|
||||
'not sure if len is eval'd each time oh well
|
||||
FOR I=0 TO LEN(CODE$)-1
|
||||
C$=CODE$[I]
|
||||
IF C$==">" THEN
|
||||
INC PNT
|
||||
ELSEIF C$=="<" THEN
|
||||
DEC PNT
|
||||
ELSEIF C$=="+" THEN
|
||||
INC TAPE[PNT]
|
||||
ELSEIF C$=="-" THEN
|
||||
DEC TAPE[PNT]
|
||||
ELSEIF C$=="." THEN
|
||||
PRINT CHR$(TAPE[PNT])
|
||||
ELSEIF C$=="," THEN
|
||||
TAPE[PNT] = ASC(SHIFT(IN$))
|
||||
ELSEIF C$=="[" AND TAPE[PNT]==0 THEN
|
||||
NEST = 1
|
||||
WHILE NEST
|
||||
INC I
|
||||
IF CODE$[I]=="[" THEN
|
||||
INC NEST
|
||||
ELSEIF CODE$[I]=="]" THEN
|
||||
DEC NEST
|
||||
ENDIF
|
||||
WEND
|
||||
ELSEIF C$=="]" AND TAPE[PNT]!=0 THEN
|
||||
NEST=1
|
||||
WHILE NEST
|
||||
DEC I
|
||||
IF CODE$[I]=="]" THEN
|
||||
INC NEST
|
||||
ELSEIF CODE$[I]=="[" THEN
|
||||
DEC NEST
|
||||
ENDIF
|
||||
WEND
|
||||
ENDIF
|
||||
NEXT
|
||||
PRINT
|
||||
END
|
||||
|
||||
CODE$="++++++++[>++++[>++>+++>+++>+<<<<-]>+>+>->>+[<]<-]>>.>---.+++++++..+++.>>.<-.<.+++.------.--------.>>+.>++."
|
||||
BRAINFUG CODE$, ""
|
||||
Loading…
Add table
Add a link
Reference in a new issue