07-01-2008, 01:00 AM
'THIS PROGRAM SHOWS ANY VALUE IN A JAPANESE ABACUS
'MAX 25 DIG
'ESTE PROGRAMA MUESTRA CUALQUIER VALOR EN UN ABACO JAPONES
'MAX 25 DIG
'NOTE: I LIKE TO USE THE "GOTO",
'... I AM OF THE OLD SCHOOL! ...
'NOTA: ME GUSTA USAR EL GOTO,
'... SOY DE LA VIEJA ESCUELA!...
'LRCVS 010708
DECLARE SUB A9 ()
DECLARE SUB A8 ()
DECLARE SUB A7 ()
DECLARE SUB A6 ()
DECLARE SUB A5 ()
DECLARE SUB A4 ()
DECLARE SUB A3 ()
DECLARE SUB A2 ()
DECLARE SUB INICIAR ()
DECLARE SUB A0 ()
DECLARE SUB A1 ()
'T = COLOR
'P = STEP X
DIM SHARED T
DIM SHARED P
SCREEN 12
CLS
15 :
T = 15
N$ = STRING$(25, "0")
LOCATE 22, 1: INPUT "* VALUE TO SEE = "; X$
IF X$ = "" THEN END
LOCATE 22, 1: PRINT STRING$(25, " ")
IF X$ = "*" THEN END
CLS
X$ = LEFT$(X$, 25)
L = LEN(X$)
MID$(N$, 26 - L) = X$
CALL INICIAR
LOCATE 15, 1: PRINT "VALUE = "; X$; ""
FOR P = 1 TO LEN(N$)
V = VAL(MID$(N$, P, 1))
'ESTOS SON LOS DIGITOS
'THIS IS THE DIGITS
IF V = 0 THEN CALL A0
IF V = 1 THEN CALL A1
IF V = 2 THEN CALL A2
IF V = 3 THEN CALL A3
IF V = 4 THEN CALL A4
IF V = 5 THEN CALL A5
IF V = 6 THEN CALL A6
IF V = 7 THEN CALL A7
IF V = 8 THEN CALL A8
IF V = 9 THEN CALL A9
NEXT P
GOTO 15
SUB A0
PAINT (P * 25, 2 * 25), 0, 8
PAINT (P * 25, 3 * 25), 0, 8
PAINT (P * 25, 4 * 25), 0, 8
PAINT (P * 25, 5 * 25), 0, 8
PAINT (P * 25, 6 * 25), 0, 8
END SUB
SUB A1
PAINT (P * 25, 2 * 25), 0, 8
PAINT (P * 25, 3 * 25), T, 8
PAINT (P * 25, 4 * 25), 0, 8
PAINT (P * 25, 5 * 25), 0, 8
PAINT (P * 25, 6 * 25), 0, 8
END SUB
SUB A2
PAINT (P * 25, 2 * 25), 0, 8
PAINT (P * 25, 3 * 25), T, 8
PAINT (P * 25, 4 * 25), T, 8
PAINT (P * 25, 5 * 25), 0, 8
PAINT (P * 25, 6 * 25), 0, 8
END SUB
SUB A3
PAINT (P * 25, 2 * 25), 0, 8
PAINT (P * 25, 3 * 25), T, 8
PAINT (P * 25, 4 * 25), T, 8
PAINT (P * 25, 5 * 25), T, 8
PAINT (P * 25, 6 * 25), 0, 8
END SUB
SUB A4
PAINT (P * 25, 2 * 25), 0, 8
PAINT (P * 25, 3 * 25), T, 8
PAINT (P * 25, 4 * 25), T, 8
PAINT (P * 25, 5 * 25), T, 8
PAINT (P * 25, 6 * 25), T, 8
END SUB
SUB A5
PAINT (P * 25, 2 * 25), T, 8
PAINT (P * 25, 3 * 25), 0, 8
PAINT (P * 25, 4 * 25), 0, 8
PAINT (P * 25, 5 * 25), 0, 8
PAINT (P * 25, 6 * 25), 0, 8
END SUB
SUB A6
PAINT (P * 25, 2 * 25), T, 8
PAINT (P * 25, 3 * 25), T, 8
PAINT (P * 25, 4 * 25), 0, 8
PAINT (P * 25, 5 * 25), 0, 8
PAINT (P * 25, 6 * 25), 0, 8
END SUB
SUB A7
PAINT (P * 25, 2 * 25), T, 8
PAINT (P * 25, 3 * 25), T, 8
PAINT (P * 25, 4 * 25), T, 8
PAINT (P * 25, 5 * 25), 0, 8
PAINT (P * 25, 6 * 25), 0, 8
END SUB
SUB A8
PAINT (P * 25, 2 * 25), T, 8
PAINT (P * 25, 3 * 25), T, 8
PAINT (P * 25, 4 * 25), T, 8
PAINT (P * 25, 5 * 25), T, 8
PAINT (P * 25, 6 * 25), 0, 8
END SUB
SUB A9
PAINT (P * 25, 2 * 25), T, 8
PAINT (P * 25, 3 * 25), T, 8
PAINT (P * 25, 4 * 25), T, 8
PAINT (P * 25, 5 * 25), T, 8
PAINT (P * 25, 6 * 25), T, 8
END SUB
SUB INICIAR
CLS
D = 5 'DIAM
P = 25
FOR V = 2 TO 6
FOR H = 1 TO P
CIRCLE (H * 25, V * 25), D, 8
NEXT H
NEXT V
'FOR H = 1 TO P
'PAINT (H * 25, 1 * 25), T, 8
'NEXT H
'FOR V = 4 TO 6
'FOR H = 1 TO P
'PAINT (H * 25, V * 25), T, 8
'NEXT H
'NEXT V
LINE (0, 63)-(640, 63), 12
END SUB
'MAX 25 DIG
'ESTE PROGRAMA MUESTRA CUALQUIER VALOR EN UN ABACO JAPONES
'MAX 25 DIG
'NOTE: I LIKE TO USE THE "GOTO",
'... I AM OF THE OLD SCHOOL! ...
'NOTA: ME GUSTA USAR EL GOTO,
'... SOY DE LA VIEJA ESCUELA!...
'LRCVS 010708
DECLARE SUB A9 ()
DECLARE SUB A8 ()
DECLARE SUB A7 ()
DECLARE SUB A6 ()
DECLARE SUB A5 ()
DECLARE SUB A4 ()
DECLARE SUB A3 ()
DECLARE SUB A2 ()
DECLARE SUB INICIAR ()
DECLARE SUB A0 ()
DECLARE SUB A1 ()
'T = COLOR
'P = STEP X
DIM SHARED T
DIM SHARED P
SCREEN 12
CLS
15 :
T = 15
N$ = STRING$(25, "0")
LOCATE 22, 1: INPUT "* VALUE TO SEE = "; X$
IF X$ = "" THEN END
LOCATE 22, 1: PRINT STRING$(25, " ")
IF X$ = "*" THEN END
CLS
X$ = LEFT$(X$, 25)
L = LEN(X$)
MID$(N$, 26 - L) = X$
CALL INICIAR
LOCATE 15, 1: PRINT "VALUE = "; X$; ""
FOR P = 1 TO LEN(N$)
V = VAL(MID$(N$, P, 1))
'ESTOS SON LOS DIGITOS
'THIS IS THE DIGITS
IF V = 0 THEN CALL A0
IF V = 1 THEN CALL A1
IF V = 2 THEN CALL A2
IF V = 3 THEN CALL A3
IF V = 4 THEN CALL A4
IF V = 5 THEN CALL A5
IF V = 6 THEN CALL A6
IF V = 7 THEN CALL A7
IF V = 8 THEN CALL A8
IF V = 9 THEN CALL A9
NEXT P
GOTO 15
SUB A0
PAINT (P * 25, 2 * 25), 0, 8
PAINT (P * 25, 3 * 25), 0, 8
PAINT (P * 25, 4 * 25), 0, 8
PAINT (P * 25, 5 * 25), 0, 8
PAINT (P * 25, 6 * 25), 0, 8
END SUB
SUB A1
PAINT (P * 25, 2 * 25), 0, 8
PAINT (P * 25, 3 * 25), T, 8
PAINT (P * 25, 4 * 25), 0, 8
PAINT (P * 25, 5 * 25), 0, 8
PAINT (P * 25, 6 * 25), 0, 8
END SUB
SUB A2
PAINT (P * 25, 2 * 25), 0, 8
PAINT (P * 25, 3 * 25), T, 8
PAINT (P * 25, 4 * 25), T, 8
PAINT (P * 25, 5 * 25), 0, 8
PAINT (P * 25, 6 * 25), 0, 8
END SUB
SUB A3
PAINT (P * 25, 2 * 25), 0, 8
PAINT (P * 25, 3 * 25), T, 8
PAINT (P * 25, 4 * 25), T, 8
PAINT (P * 25, 5 * 25), T, 8
PAINT (P * 25, 6 * 25), 0, 8
END SUB
SUB A4
PAINT (P * 25, 2 * 25), 0, 8
PAINT (P * 25, 3 * 25), T, 8
PAINT (P * 25, 4 * 25), T, 8
PAINT (P * 25, 5 * 25), T, 8
PAINT (P * 25, 6 * 25), T, 8
END SUB
SUB A5
PAINT (P * 25, 2 * 25), T, 8
PAINT (P * 25, 3 * 25), 0, 8
PAINT (P * 25, 4 * 25), 0, 8
PAINT (P * 25, 5 * 25), 0, 8
PAINT (P * 25, 6 * 25), 0, 8
END SUB
SUB A6
PAINT (P * 25, 2 * 25), T, 8
PAINT (P * 25, 3 * 25), T, 8
PAINT (P * 25, 4 * 25), 0, 8
PAINT (P * 25, 5 * 25), 0, 8
PAINT (P * 25, 6 * 25), 0, 8
END SUB
SUB A7
PAINT (P * 25, 2 * 25), T, 8
PAINT (P * 25, 3 * 25), T, 8
PAINT (P * 25, 4 * 25), T, 8
PAINT (P * 25, 5 * 25), 0, 8
PAINT (P * 25, 6 * 25), 0, 8
END SUB
SUB A8
PAINT (P * 25, 2 * 25), T, 8
PAINT (P * 25, 3 * 25), T, 8
PAINT (P * 25, 4 * 25), T, 8
PAINT (P * 25, 5 * 25), T, 8
PAINT (P * 25, 6 * 25), 0, 8
END SUB
SUB A9
PAINT (P * 25, 2 * 25), T, 8
PAINT (P * 25, 3 * 25), T, 8
PAINT (P * 25, 4 * 25), T, 8
PAINT (P * 25, 5 * 25), T, 8
PAINT (P * 25, 6 * 25), T, 8
END SUB
SUB INICIAR
CLS
D = 5 'DIAM
P = 25
FOR V = 2 TO 6
FOR H = 1 TO P
CIRCLE (H * 25, V * 25), D, 8
NEXT H
NEXT V
'FOR H = 1 TO P
'PAINT (H * 25, 1 * 25), T, 8
'NEXT H
'FOR V = 4 TO 6
'FOR H = 1 TO P
'PAINT (H * 25, V * 25), T, 8
'NEXT H
'NEXT V
LINE (0, 63)-(640, 63), 12
END SUB