home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
DP Tool Club 12
/
CD_ASCQ_12_0294.iso
/
maj
/
2364
/
minilab
/
schema20.bas
< prev
next >
Wrap
BASIC Source File
|
1993-10-22
|
11KB
|
198 lines
REM W. Prévost 1993 : MINILAB: SCHEMA20 : COMPARATEUR A FENETRE
DEFINT A-Z: SCREEN 12
A = 300: B = 130: c = 355
LINE (A, B)-(A, B + 50), 13: LINE -(c, B + 25), 13: LINE -(A, B), 13
B = 200: LINE (A, B)-(A, B + 50), 13: LINE -(c, B + 25), 13: LINE -(A, B), 13
x = A + 17: y = 155: c = 5: GOSUB A: x = A + 17: y = B + 25: c = 5: GOSUB B
x = A + 5: y = 140: c = 12: GOSUB plus: x = A + 5: y = 210: GOSUB plus
x = A + 5: y = 170: c = 7: GOSUB moins: x = A + 5: y = 240: GOSUB moins
LINE (327, 143)-(327, 90), 12: LINE (327, 238)-(327, 300), 7
FOR x = 290 TO 365 STEP 5: PSET (x, 120), 5: NEXT x
FOR x = 290 TO 365 STEP 5: PSET (x, 260), 5: NEXT x
FOR y = 120 TO 260 STEP 5: PSET (290, y), 5: NEXT y
FOR y = 120 TO 260 STEP 5: PSET (365, y), 5: NEXT y
c = 355: d = c + 25
LINE (d, 150)-(d, 160), 9: LINE -(d + 10, 155), 9: LINE -(d, 150), 9
PAINT (d + 5, 155), 9, 9: LINE (d + 10, 150)-(d + 10, 160), 9:
LINE (d, 220)-(d, 230), 9: LINE -(d + 10, 225), 9: LINE -(d, 220), 9
PAINT (d + 5, 225), 9, 9: LINE (d + 10, 220)-(d + 10, 230), 9:
LINE (c, 155)-(c + 60, 155), 9: LINE -(c + 60, 225), 9: LINE -(c, 225), 9
x = d + 5: y = 142: c = 9: GOSUB dm: x = d + 5: y = 235: GOSUB dm
j = 190: K = d + 65
LINE (d + 36, j)-(d + 100, j), 10: CIRCLE (d + 102, j), 2, 10
LINE (K, j)-(K, j + 40), 10
LINE (d + 61, j + 40)-(d + 69, j + 70), 10, B
LINE (K, j + 70)-(K, 300), 10
LINE (300, 145)-(280, 145), 3: LINE -(280, 235), 3: LINE -(300, 235), 3
LINE (280, 190)-(258, 190), 3: LINE (242, 190)-(200, 190), 3
CIRCLE (198, 190), 2, 3: x = 180: y = 190: c = 3: GOSUB UE
R = 250: S = 120
LINE (R, 90)-(R, S), 14: LINE (R - 4, S)-(R + 4, S + 30), 14, B
LINE (R, S + 30)-(R, S + 55), 14: LINE (R - 4, S + 55)-(R + 4, S + 85), 14, B
LINE (R, S + 85)-(R, S + 110), 14
LINE (R - 4, S + 110)-(R + 4, S + 140), 14, B
LINE (R, S + 140)-(R, 300), 14
LINE (R, 165)-(276, 165), 14: LINE (284, 165)-(300, 165), 14
LINE (R, 215)-(276, 215), 14: LINE (284, 215)-(300, 215), 14
x = R - 20: y = S + 15: c = 14: GOSUB R: GOSUB 1
x = R - 20: y = S + 60: GOSUB R: GOSUB 2
x = R - 20: y = S + 125: GOSUB R: GOSUB 3
LINE (160, 90)-(500, 90), 12: CIRCLE (158, 90), 2, 12
x = 138: y = 90: c = 12: GOSUB plus: GOSUB V
LINE (160, 300)-(500, 300), 7: CIRCLE (158, 300), 2, 7
x = 50: y = 345: c = 15: GOSUB UA: GOSUB tref: GOSUB A: x = x + 20
GOSUB UB: GOSUB tref: GOSUB B: x = x + 20: c = 14
GOSUB S: GOSUB om: GOSUB im: GOSUB tm: x = x + 8
GOSUB UA: x = x + 8: PSET (x, y), c: DRAW "H4 F4 G4": x = x + 8: GOSUB UB
x = 50: y = 370: c = 12: GOSUB S: GOSUB im: x = x + 8: GOSUB UE: x = x + 8
PSET (x, y), c: DRAW "H4 F4 G4": x = x + 8: GOSUB UA: GOSUB vrg
GOSUB A: GOSUB egal: GOSUB 1: GOSUB vrg: GOSUB B: GOSUB egal: GOSUB 0
x = x + 20: c = 10: GOSUB S: GOSUB im: x = x + 8: GOSUB UB: x = x + 3
PSET (x, y), c: DRAW "E4 G4 F4": x = x + 12: GOSUB UE: x = x + 3
PSET (x, y), c: DRAW "E4 G4 F4": x = x + 12: GOSUB UA: GOSUB vrg
GOSUB A: GOSUB egal: GOSUB 0: GOSUB vrg: GOSUB B: GOSUB egal: GOSUB 0
x = x + 20: c = 12: GOSUB S: GOSUB im: x = x + 8: GOSUB UE: x = x + 3
PSET (x, y), c: DRAW "E4 G4 F4": x = x + 12: GOSUB UB: GOSUB vrg
GOSUB A: GOSUB egal: GOSUB 0: GOSUB vrg: GOSUB B: GOSUB egal: GOSUB 1
REM Composants
LOCATE 26, 7: COLOR 13: PRINT "AOP = 1/2 LM 324"
LOCATE 26, 26: COLOR 12: PRINT "Vcc = 9 V"
LOCATE 26, 38: COLOR 10: PRINT "R1 = R2 = R3 = 1O k"; CHR$(234)
LOCATE 26, 61: COLOR 9: PRINT "d = 1N 4148"
LOCATE 28, 20: COLOR 10
PRINT "La sortie sera à 1 si Ue > 6 V ou Ue < 3 V."
attente: f$ = "": WHILE f$ = "": f$ = INKEY$: WEND: f$ = UCASE$(f$)
IF f$ = "Q" THEN GOTO quitter
GOTO attente: END
quitter: LINE (0, 61)-(639, 479), 0, BF: CHAIN "minilab\SCHEMAS.bas"
1 : FOR vert = y - 4 TO y + 4: PSET (x, vert), c: NEXT vert
PSET (x - 1, y - 4), c: PSET (x - 1, y + 4), c: PSET (x + 1, y + 4), c
x = x + 8: RETURN
2 : PSET (x, y - 4), c: PSET (x + 1, y - 4), c: PSET (x - 1, y - 3), c
PSET (x + 2, y - 3), c: PSET (x - 2, y - 2), c: PSET (x + 3, y - 2), c
PSET (x + 3, y - 1), c: PSET (x + 2, y), c
PSET (x, y + 1), c: PSET (x + 1, y), c
PSET (x - 2, y + 2), c: PSET (x - 1, y + 2), c: PSET (x - 2, y + 3), c
FOR hor = x - 2 TO x + 3: PSET (hor, y + 4), c: NEXT hor: x = x + 9: RETURN
3 : FOR H = x - 1 TO x + 2: PSET (H, y - 4), c: NEXT H
FOR H = x - 1 TO x + 2: PSET (H, y + 4), c: NEXT H
PSET (x - 2, y - 3), c: PSET (x - 2, y + 3), c
FOR H = x - 1 TO x + 2: PSET (H, y), c: NEXT H
FOR V = y - 3 TO y - 1: PSET (x + 3, V), c: NEXT V
FOR V = y + 1 TO y + 3: PSET (x + 3, V), c: NEXT V: x = x + 9: RETURN
0 : FOR H = x - 1 TO x + 2: PSET (H, y - 4), c: NEXT H
FOR H = x - 1 TO x + 2: PSET (H, y + 4), c: NEXT H
FOR V = y TO y + 3: PSET (x - 2, V), c: NEXT V
FOR V = y TO y + 3: PSET (x + 3, V), c: NEXT V
FOR V = y - 3 TO y - 1: PSET (x - 2, V), c: NEXT V
FOR V = y - 3 TO y - 1: PSET (x + 3, V), c: NEXT V: x = x + 9: RETURN
egal: x = x + 2: FOR H = x - 2 TO x + 3: PSET (H, y - 2), c: NEXT H
FOR H = x - 2 TO x + 3: PSET (H, y + 1), c: NEXT H: x = x + 11: RETURN
A: PSET (x, y - 4), c: PSET (x + 1, y - 4), c
PSET (x - 1, y - 3), c: PSET (x + 2, y - 3), c
FOR vert = y - 2 TO y + 4: PSET (x - 2, vert), c: PSET (x + 3, vert), c: NEXT vert
FOR hor = x - 1 TO x + 2: PSET (hor, y + 1), c: NEXT hor: x = x + 9: RETURN
c: PSET (x, y - 4), c: PSET (x + 1, y - 4), c
PSET (x - 1, y - 3), c: PSET (x + 2, y - 3), c
FOR vert = y - 2 TO y + 2: PSET (x - 2, vert), c: NEXT vert
PSET (x + 3, y - 2), c: PSET (x + 3, y + 2), c
PSET (x, y + 4), c: PSET (x + 1, y + 4), c
PSET (x - 1, y + 3), c: PSET (x + 2, y + 3), c: x = x + 9: RETURN
B: FOR V = y - 4 TO y + 4: PSET (x - 2, V), c: NEXT V
FOR H = x - 1 TO x + 2: PSET (H, y - 4), c: NEXT H
FOR H = x - 1 TO x + 2: PSET (H, y), c: NEXT H
FOR H = x - 1 TO x + 2: PSET (H, y + 4), c: NEXT H
FOR V = y - 3 TO y - 1: PSET (x + 3, V), c: NEXT V
FOR V = y + 1 TO y + 3: PSET (x + 3, V), c: NEXT V: x = x + 9: RETURN
I: x = x - 2: FOR vert = y - 4 TO y + 4: PSET (x, vert), c: NEXT vert
PSET (x - 1, y - 4), c: PSET (x - 1, y + 4), c: PSET (x + 1, y + 4), c
PSET (x + 1, y - 4), c: x = x + 6: RETURN
P: FOR V = y - 4 TO y + 4: PSET (x - 2, V), c: NEXT V
FOR H = x - 1 TO x + 1: PSET (H, y - 4), c: NEXT H
PSET (x + 2, y - 3), c: PSET (x + 3, y - 2), c: PSET (x + 2, y - 1), c
FOR H = x - 1 TO x + 1: PSET (H, y), c: NEXT H: x = x + 9: RETURN
R: FOR V = y - 4 TO y + 4: PSET (x - 2, V), c: NEXT V
FOR H = x - 1 TO x + 1: PSET (H, y - 4), c: NEXT H
PSET (x + 2, y - 3), c: PSET (x + 3, y - 2), c: PSET (x + 2, y - 1), c
FOR H = x - 1 TO x + 1: PSET (H, y), c: NEXT H
FOR V = y + 1 TO y + 4: PSET (x + 2, V), c: NEXT V: x = x + 9: RETURN
S: FOR H = x - 1 TO x + 2: PSET (H, y - 4), c: NEXT H 'S
FOR H = x - 1 TO x + 2: PSET (H, y), c: NEXT H
FOR H = x - 1 TO x + 2: PSET (H, y + 4), c: NEXT H
FOR V = y - 3 TO y - 1: PSET (x - 2, V), c: NEXT V
FOR V = y + 1 TO y + 3: PSET (x + 3, V), c: NEXT V
PSET (x + 3, y - 3), c: PSET (x - 2, y + 3), c: x = x + 9: RETURN
U: FOR V = y - 4 TO y + 3: PSET (x - 2, V), c: PSET (x + 3, V), c: NEXT V
FOR H = x - 1 TO x + 2: PSET (H, y + 4), c: NEXT H: x = x + 9: RETURN
V: FOR V = y - 4 TO y + 1: PSET (x - 2, V), c: PSET (x + 3, V), c: NEXT V
FOR V = y + 2 TO y + 3: PSET (x - 1, V), c: PSET (x + 2, V), c: NEXT V
PSET (x, y + 4), c: PSET (x + 1, y + 4), c: x = x + 9: RETURN
dot: x = x - 2: PSET (x, y + 4), c: x = x + 9: RETURN
plus: FOR H = x - 2 TO x + 2: PSET (H, y), c: NEXT H
FOR V = y - 2 TO y + 2: PSET (x, V), c: NEXT V: x = x + 8: RETURN
pt2: PSET (x, y + 3), c: PSET (x + 1, y + 3), c
PSET (x, y - 3), c: PSET (x + 1, y - 3), c: x = x + 15: RETURN
vrg: PSET (x, y + 4), c: PSET (x, y + 5), c: PSET (x - 1, y + 6), c
x = x + 10: RETURN
apos: x = x - 1: PSET (x, y - 4), c: PSET (x, y - 3), c: PSET (x - 1, y - 2), c
x = x + 6: RETURN
moins: FOR H = x - 2 TO x + 2: PSET (H, y), c: NEXT H: x = x + 8: RETURN
' minuscules
am: y = y + 1: FOR V = y - 2 TO y + 2: PSET (x - 2, V), c: NEXT V
FOR V = y - 3 TO y + 3: PSET (x + 2, V), c: NEXT V
FOR H = x - 1 TO x + 1: PSET (H, y + 3), c: NEXT H
FOR H = x - 1 TO x + 1: PSET (H, y - 3), c: NEXT H
x = x + 7: y = y - 1: RETURN
bm: y = y + 1: FOR V = y - 5 TO y + 3: PSET (x - 2, V), c: NEXT V
FOR V = y - 2 TO y + 2: PSET (x + 2, V), c: NEXT V
FOR H = x - 1 TO x + 1: PSET (H, y + 3), c: NEXT H
FOR H = x - 1 TO x + 1: PSET (H, y - 3), c: NEXT H
x = x + 7: y = y - 1: RETURN
dm: y = y + 1: FOR V = y - 5 TO y + 3: PSET (x + 2, V), c: NEXT V
FOR V = y - 2 TO y + 2: PSET (x - 2, V), c: NEXT V
FOR H = x - 1 TO x + 1: PSET (H, y + 3), c: NEXT H
FOR H = x - 1 TO x + 1: PSET (H, y - 3), c: NEXT H
x = x + 7: y = y - 1: RETURN
em: y = y + 1: FOR H = x - 1 TO x + 1: PSET (H, y - 3), c: NEXT H
PSET (x - 2, y - 2), c: PSET (x + 2, y - 2), c
PSET (x - 2, y - 1), c: PSET (x + 2, y - 1), c
FOR H = x - 2 TO x + 1: PSET (H, y), c: NEXT H: PSET (x - 2, y + 1), c
PSET (x - 2, y + 2), c:
FOR H = x - 1 TO x + 2: PSET (H, y + 3), c: NEXT H: x = x + 7
y = y - 1: RETURN
fm: y = y + 1: FOR V = y - 4 TO y + 3: PSET (x - 2, V), c: NEXT V
PSET (x + 2, y - 4), c: FOR H = x - 1 TO x + 1: PSET (H, y - 1), c: NEXT H
FOR H = x - 1 TO x + 1: PSET (H, y - 5), c: NEXT H: x = x + 7: y = y - 1: RETURN
im: y = y + 1: PSET (x, y - 4), c: FOR V = y - 2 TO y + 3: PSET (x, V), c: NEXT V
PSET (x - 1, y - 2), c: PSET (x - 1, y + 3), c: PSET (x + 1, y + 3), c
x = x + 7: y = y - 1: RETURN
nm: y = y + 1: PSET (x - 2, y - 3), c: PSET (x, y - 3), c: PSET (x + 1, y - 3), c
FOR V = y - 2 TO y + 3: PSET (x - 1, V), c: NEXT V
FOR V = y - 2 TO y + 3: PSET (x + 2, V), c: NEXT V: x = x + 7: y = y - 1: RETURN
om: y = y + 1: FOR V = y - 2 TO y + 2: PSET (x - 2, V), c: NEXT V
FOR V = y - 2 TO y + 2: PSET (x + 2, V), c: NEXT V
FOR H = x - 1 TO x + 1: PSET (H, y + 3), c: NEXT H
FOR H = x - 1 TO x + 1: PSET (H, y - 3), c: NEXT H: x = x + 7: y = y - 1: RETURN
rm: y = y + 1: FOR V = y - 3 TO y + 3: PSET (x - 2, V), c: NEXT V
PSET (x + 2, y - 2), c
FOR H = x - 1 TO x + 1: PSET (H, y - 3), c: NEXT H: x = x + 7: y = y - 1: RETURN
sm: y = y + 1: FOR H = x - 1 TO x + 1: PSET (H, y - 3), c: NEXT H
PSET (x - 2, y - 2), c: PSET (x + 2, y - 2), c: PSET (x - 2, y - 1), c
FOR H = x - 1 TO x + 1: PSET (H, y), c: NEXT H: PSET (x + 2, y + 1), c
PSET (x - 2, y + 2), c: PSET (x + 2, y + 2), c
FOR H = x - 1 TO x + 1: PSET (H, y + 3), c: NEXT H: x = x + 7: y = y - 1: RETURN
tm: y = y + 1: FOR V = y - 4 TO y + 2: PSET (x - 2, V), c: NEXT V
FOR H = x - 1 TO x + 1: PSET (H, y - 2), c: NEXT H
FOR H = x - 1 TO x + 1: PSET (H, y + 3), c: NEXT H: x = x + 7: y = y - 1: RETURN
AOP: GOSUB A: GOSUB 0: GOSUB P: RETURN
tref: GOSUB egal: GOSUB tm: GOSUB em: GOSUB nm: GOSUB sm
GOSUB im: GOSUB om: GOSUB nm: x = x + 8: GOSUB dm: GOSUB em: x = x + 8
GOSUB rm: GOSUB em: GOSUB fm: GOSUB dot: GOSUB dm: GOSUB em
x = x + 6: GOSUB 1: GOSUB apos: GOSUB AOP: x = x + 6: RETURN
UE: GOSUB U: GOSUB em: RETURN
UA: GOSUB U: GOSUB am: RETURN
UB: GOSUB U: GOSUB bm: RETURN