опнцпюллю
0 N = TIMER: FOR X = 1 TO 1000000: NEXT X: K = TIMER: W = CINT(100 / (K - N))
1 W1 = W * 150: W2 = W * 10000
2 CLS : PRINT "1 - пюгпеьемхе гюохях, ярхпюмхъ"
3 PRINT "2 - гюопер гюохях, ярхпюмхъ": PRINT "3 - ярхпюмхе"
4 PRINT "4 - гюохяэ хг юдпеянб 50000...50127"
5 PRINT "5 - времхе б юдпеяю 48000...48127"
6 PRINT "6 - япюбмемхе юдпеянб 48000... х 50000..."
7 PRINT "7 - ббнд дюммшу б юдпеяю 50000...50127"
8 PRINT "8 - бшунд хг опнцпюллш"
9 INPUT L: ON L GOTO 10, 13, 15, 20, 32, 46, 51, 54
10 OUT &H37A, 3: OUT &H37A, 6: OUT &H37A, 4: OUT &H37A, 6: OUT &H37A, 2
11 OUT &H37A, 0: OUT &H37A, 2: OUT &H37A, 0: OUT &H37A, 2: OUT &H37A, 6
12 FOR X = 1 TO 7: OUT &H37A, 4: OUT &H37A, 6: NEXT X: OUT &H37A, 3: GOTO 2
13 OUT &H37A, 3: OUT &H37A, 6: OUT &H37A, 4: OUT &H37A, 6: OUT &H37A, 2
14 FOR X = 1 TO 9: OUT &H37A, 0: OUT &H37A, 2: NEXT X: OUT &H37A, 3: GOTO 2
15 OUT &H37A, 3: OUT &H37A, 6: OUT &H37A, 4
16 OUT &H37A, 6: OUT &H37A, 2: OUT &H37A, 0: OUT &H37A, 2: OUT &H37A, 0
17 OUT &H37A, 2: OUT &H37A, 6: OUT &H37A, 4: OUT &H37A, 6: OUT &H37A, 2
18 FOR X = 1 TO 6: OUT &H37A, 0: OUT &H37A, 2: NEXT X: OUT &H37A, 3
19 OUT &H37A, 2: FOR X = 1 TO W1: NEXT X: OUT &H37A, 3: GOTO 2: REM 15 ms
20 FOR A = 0 TO 127: OUT &H37A, 3: OUT &H37A, 6: OUT &H37A,
21 OUT &H37A, 6: OUT &H37A, 2: OUT &H37A, 0: OUT &H37A, 2: OUT &H37A, 6
22 OUT &H37A, 4: OUT &H37A, 6: B = A
23 GOSUB 55
24 FOR Y = 0 TO 6: C = PEEK(48994 + Y): IF C = 0 GOTO 25 ELSE 26
25 OUT &H37A, 2: OUT &H37A, 0: OUT &H37A, 2: GOTO 27
26 OUT &H37A, 6: OUT &H37A, 4: OUT &H37A, 6
27 NEXT Y: D = PEEK(50000 + A): B = D
28 GOSUB 55
29 GOSUB 59
30 OUT &H37A, 3: FOR X = 0 TO W1: NEXT X: OUT &H37A, 2: REM 15 ms
31 NEXT A: OUT &H37A, 3: GOTO 2
32 FOR A = 0 TO 127: OUT &H37A, 3: OUT &H37A, 6: OUT &H37A, 4: OUT &H37A, 6
33 OUT &H37A, 4: OUT &H37A, 6: OUT &H37A, 2: OUT &H37A, 0: OUT &H37A, 2
34 B = A: GOSUB 55
35 FOR Y = 0 TO 6: C = PEEK(48994 + Y): IF C = 0 GOTO 36 ELSE 37
36 OUT &H37A, 2: OUT &H37A, 0: OUT &H37A, 2: GOTO 38
37 OUT &H37A, 6: OUT &H37A, 4: OUT &H37A, 6
38 NEXT Y: OUT &H37A, 2: OUT &H37A, 0
39 FOR Y = 0 TO 7: OUT &H37A, 2: C = INP(&H379): C = C AND 16: OUT &H37A, 0
40 IF C = 16 GOTO 41 ELSE 42
41 POKE (48980 + Y), 1: GOTO 43
42 POKE (48980 + Y), 0
43 NEXT Y: SL = 0
44 GOSUB 63
45 POKE (48000 + A), SL: OUT &H37A, 3: NEXT A: GOTO 2
46 FOR A = 0 TO 127: C = PEEK(48000 + A): D = PEEK(50000 + A)
47 IF C = D GOTO 50 ELSE 48
48 PRINT (48000 + A); : PRINT " "; : PRINT C: PRINT (50000 + A); : PRINT " ";
49 PRINT D: FOR X = 1 TO W2: NEXT X: IF INKEY$ = " " THEN 0: REM 1 s
50 NEXT A: GOTO 2
51 FOR A = 0 TO 127: PRINT (50000 + A); : PRINT "дЕЯЪРХВМШЕ ДЮММШЕ 255 max"
52 INPUT D: POKE (50000 + A), D: NEXT A
53 FOR X = 0 TO W2: NEXT X: GOTO 2: REM 1 s
54 SYSTEM
55 POKE 48993, (B AND &H80): POKE 48994, (B AND &H40)
56 POKE 48995, (B AND &H20): POKE 48996, (B AND &H10): POKE 48997, (B AND 8)
57 POKE 48998, (B AND 4): POKE 48999, (B AND 2): POKE 49000, (B AND 1)
58 RETURN
59 FOR Y = 0 TO 7: C = PEEK(48993 + Y): IF C = 0 GOTO 60 ELSE 61
60 OUT &H37A, 2: OUT &H37A, 0: OUT &H37A, 2: GOTO 62
61 OUT &H37A, 6: OUT &H37A, 4: OUT &H37A, 6
62 NEXT Y: RETURN
63 Z = PEEK(48980): IF Z = 1 THEN SL = &H80
64 Z = PEEK(48981): IF Z = 1 THEN SL = (SL OR &H40)
65 Z = PEEK(48982): IF Z = 1 THEN SL = (SL OR &H20)
66 Z = PEEK(48983): IF Z = 1 THEN SL = (SL OR &H10)
67 Z = PEEK(48984): IF Z = 1 THEN SL = (SL OR &H8)
68 Z = PEEK(48985): IF Z = 1 THEN SL = (SL OR &H4)
69 Z = PEEK(48986): IF Z = 1 THEN SL = (SL OR &H2)
70 Z = PEEK(48987): IF Z = 1 THEN SL = (SL OR &H1)
71 RETURN