Skip to content

Instantly share code, notes, and snippets.

View mit41301's full-sized avatar

mit41301 mit41301

View GitHub Profile
@mit41301
mit41301 / CALENDAR.BAS
Created January 3, 2026 16:21
Monthly calendar printing program Between 1900 and 2099 using BASIC. Works well with QB64.
10 REM CALENDAR.BAS - LAST EDITTED 31/01/82
20 REM Dr Dobbs Nov 1981 p61
30 REM This program inputs a month and year and
40 REM from that prints the current months calendar.
50 REM
60 DEFINT A-Y
70 DEFSTR Z
80 INPUT "Month";M
90 INPUT "Year";Y
100 IF Y<1900 OR Y > 2099 THEN PRINT "Between 1900 and 2099 please!" : GOTO 80
@mit41301
mit41301 / CODE39_GW_BASIC.BAS
Created December 1, 2025 08:42
BARCODE PRINTER PROGRAM - CODE 3 OF 9. TESTED WITH WINDOWS 10 HOME AND WINDOWS 11 OS WITH QB64 and VERIFIED THE OUTPUT WITH CODE39 SCANNER
10 Rem TITLE : BARCODE PRINTER PROGRAM - CODE 3 OF 9
20 Rem TESTED WITH WINDOWS 10 HOME AND WINDOWS 11 OS
30 Rem TESTED WITH QB64 and VERIFIED THE OUTPUT WITH CODE39 SCANNER
40 Dim C$(44), P$(44), G%(1000)
50 For I = 0 To 43
60 Read C$(I), X$
70 C% = Val("&H" + X$)
80 For N% = 9 To 0 Step -1
90 P$(I) = Right$(Str$(C% Mod 2), 1) + P$(I)
100 C% = C% \ 2
@mit41301
mit41301 / CODABAR_QB.BAS
Last active December 21, 2025 07:16
Codabar generator using Quick BASIC. TESTED WITH WINDOWS 10 HOME AND WINDOWS 11 OS WITH QB64 and VERIFIED THE OUTPUT WITH CODABAR SCANNER
Dim P$(20), A$(20), G%(999)
For I = 1 To 20
Read X$
A$(I) = Left$(X$, 1)
X% = Val("&H" + Right$(X$, Len(X$) - 1))
For N% = 1 To 7
P$(I) = Right$(Str$(X% Mod 2), 1) + P$(I)
X% = X% \ 2
Next N%
Next I
@mit41301
mit41301 / CODE25_QB.BAS
Last active December 21, 2025 07:17
Interleaved 2 OF 5 code generator using QB. The code generates the encoding pattern on the fly. No database used. Works on WINDOWS 11 with QB64.
DIM P$(0 TO 9), G%(&H3FF)
FOR I = 1 TO 12
I = I + (I MOD 2 + I \ 2 MOD 2 + I \ 4 MOD 2 + I \ 8 MOD 2) \ 3
N = I
P = P XOR P
Y = (1 + Y) MOD 10
DO
P$(Y) = P$(Y) + RIGHT$(STR$(N MOD 2), 1)
P = P XOR N MOD 2
N = N \ 2
@mit41301
mit41301 / UPC-EAN_WIN_QBASIC.BAS
Created December 1, 2025 07:53
UPC/EAN Barcode generation using QBASIC. Works under WINDOWS 11 with QB64. Windows and DOS will have different background and image color.
10 DIM p$(29), c%(12), q$(9), m%(100)
20 INPUT " Enter the Number : "; u$
30 FOR i% = 0 TO 9
40 READ n$, s$
50 n% = ASC(n$)
60 s% = ASC(s$) XOR &H3F
70 WHILE n% <> 0
80 p$(i%) = RIGHT$(STR$(n% MOD 2), 1) + p$(i%)
90 p$(i% + 10) = RIGHT$(STR$(n% MOD 2 XOR 1), 1) + p$(i% + 10)
100 p$(i% + 20) = p$(i% + 20) + LEFT$(p$(i%), 1)
@mit41301
mit41301 / UPC-EAN_WIN_GW-BASIC.BAS
Created December 1, 2025 07:51
UPC/EAN Barcode generation using GW-BASIC. Works under WINDOWS 11 with QB64. Windows and DOS will have different background and image color.
10 DIM p$(29), c%(12), q$(9), m%(100)
20 INPUT " Enter the Number : "; u$
30 FOR i% = 0 TO 9
40 READ n$, s$
50 n% = ASC(n$)
60 s% = ASC(s$) XOR &H3F
70 WHILE n% <> 0
80 p$(i%) = RIGHT$(STR$(n% MOD 2), 1) + p$(i%)
90 p$(i% + 10) = RIGHT$(STR$(n% MOD 2 XOR 1), 1) + p$(i% + 10)
100 p$(i% + 20) = p$(i% + 20) + LEFT$(p$(i%), 1)
@mit41301
mit41301 / UPC-EAN_DOS_QBASIC.BAS
Last active December 1, 2025 11:19
UPC/EAN Barcode generation using QBASIC V4.5. TESTED WITH WINDOWS 10 HOME AND WINDOWS 11 OS WITH QB64 and VERIFIED THE OUTPUT WITH UPC/EAN SCANNER
10 DIM p$(29), c%(12), q$(9), m%(100)
20 INPUT " Enter the Number : "; u$
30 FOR i% = 0 TO 9
40 READ n$, s$
50 n% = ASC(n$)
60 s% = ASC(s$) XOR &H3F
70 WHILE n% <> 0
80 p$(i%) = RIGHT$(STR$(n% MOD 2), 1) + p$(i%)
90 p$(i% + 10) = RIGHT$(STR$(n% MOD 2 XOR 1), 1) + p$(i% + 10)
100 p$(i% + 20) = p$(i% + 20) + LEFT$(p$(i%), 1)
@mit41301
mit41301 / UPC-EAN_DOS_GW-BASIC.BAS
Last active December 21, 2025 07:19
UPC/EAN Barcode generation using GW-BASIC. TESTED WITH WINDOWS 10 HOME AND WINDOWS 11 OS WITH QB64 and VERIFIED THE OUTPUT WITH UPC/EAN SCANNER
10 DIM p$(29), c%(12), q$(9), m%(100)
20 INPUT " Enter the Number : "; u$
30 FOR i% = 0 TO 9
40 READ n$, s$
50 n% = ASC(n$)
60 s% = ASC(s$) XOR &H3F
70 WHILE n% <> 0
80 p$(i%) = RIGHT$(STR$(n% MOD 2), 1) + p$(i%)
90 p$(i% + 10) = RIGHT$(STR$(n% MOD 2 XOR 1), 1) + p$(i% + 10)
100 p$(i% + 20) = p$(i% + 20) + LEFT$(p$(i%), 1)