Skip to content

Instantly share code, notes, and snippets.

@mit41301
mit41301 / SET10ms.BAS
Created March 8, 2026 14:55
SET 10 ms prog time for EEPROM using BASIC-52
10 REM ************************
20 REM * SET10MS *
30 REM * set the progtime *
40 REM * for EEPROM to 10 ms *
50 REM ************************
60 DBY(40H)=0DCH : DBY(41H)=0 : XBY(128H)=0DCH : XBY(129H)=0
@mit41301
mit41301 / ROMCOPY.BAS
Created March 8, 2026 14:53
ROM COPY using BASIC-52
10 PRINT CHR(12) : REM Bildschirm loeschen
20 PRINT "********************************************"
30 PRINT "* ROMCOPY *"
40 PRINT "* Kopiert den MCS-51-BASIC-Interpreter *"
50 PRINT "* vom 8052AH-Prozessor in ein 8Kbyte EPROM *"
60 PRINT "* H.-J.Boehling 01.10.97 *"
70 PRINT "********************************************"
80 PRINT
90 MTOP=1FFFH : REM RAM-Speicher ab 2000H sichern
100 REM ===== Abfrage: EPROM eingesetzt ? ==========
@mit41301
mit41301 / RENUM.BAS
Created March 8, 2026 14:52
RENUM using BASIC-52
10 REM *******************************
20 REM * RENUM-Testprogramm *
30 REM * H.-J. Boehling 09.10.97 *
40 REM *******************************
50 REM
60 REM ===== Diese Spruenge werden geaendert ==========
70 REM ===== Bemerkungen hinter REM nicht ! ==========
81 GOSUB 110 : REM GOSUB 110 darf nicht geaendert werden.
82 GOTO 120 : REM GOTO 120 darf nicht geaendert werden.
83 ONERR 130 : REM ONERR 130 darf nicht geaendert werden.
@mit41301
mit41301 / EPROMMER.BAS
Created March 8, 2026 14:50
(E)EPROM-Programmer V02.00 using BASIC-52
10 REM ********************************************
20 REM * (E)EPROM-Programmer V02.00 *
30 REM * Fuer MCS-51-BASIC-Systeme mit 32KB RAM *
40 REM * und Hardware zur (E)EPROM-Programmierung *
50 REM * (C) H.-J. Boehling 13.02.00 *
60 REM * http://home.nexgo.de/H.Boehling *
70 REM * *
80 REM ********************************************
90 REM
100 MTOP=3FFFH : STRING 82,80 : REM RAM-Speicher ab 4000H sichern
@mit41301
mit41301 / I2CTEST.BAS
Created March 8, 2026 14:47
I2C Communication Test with I/O expander using BASIC-52
10 REM *******************************
20 REM * I2C Communication Test *
30 REM * (C) H.-J. Boehling 08.29.99 *
40 REM *******************************
50 ADDR=40H
60 FOR I=0 TO 255
70 PRINT I,
80 REM ===== I2C Write ===============
90 I2CSTART
100 IF DBY(18H)=0 I2CPUT (ADDR) ELSE 260
@mit41301
mit41301 / WRSFR.BAS
Created March 8, 2026 14:46
Write SFR using BASIC-52
10 REM **************
20 REM * WRSFR Test *
30 REM **************
40 FOR R=0 TO 0FFH
50 WRSFR (90H)R : REM Write to Port 1
60 RDSFR (90H)A : REM Read from Port 1
70 PH0. R,"=",A," ",
80 NEXT
@mit41301
mit41301 / RDSFR.BAS
Created March 8, 2026 14:45
Read SFR locations using BASIC-52
10 REM **************
20 REM * RDSFR Test *
30 REM **************
40 FOR I=80H TO 0FFH
50 RDSFR (I)A
60 PH0. I,"=",A," ",
70 NEXT I
@mit41301
mit41301 / LUNALAND.BAS
Created March 8, 2026 13:58
LUNAR LANDER using 8052-BASIC
1000 REM LUNAR LANDER 8052-BASIC ADAPTATION BY: S.QUEST - 1978,97
1005 PRINT CHR(27),CHR(91),CHR(50),CHR(74),
1010 PRINT CHR(9),CHR(9),CHR(9),"** APOLLO LUNAR LANDER **"
1020 PRINT CHR(9),CHR(9),CHR(9),"_________1_9_7_8_________"
1030 PRINT
1040 PRINT "ATTENTION:"
1050 PRINT "MISSION CONTROL CALLING APOLLO LUNAR LANDER."
1053 PRINT "ON-BOARD GUIDANCE COMPUTERS HAVE FAILED."
1060 PRINT CHR(7),CHR(7),CHR(7) : FOR WAI=0 TO 2000 : NEXT WAI
@mit41301
mit41301 / DUMPHEX.BAS
Created March 8, 2026 13:57
DUMP the ROM in HEX using BASIC-52
10 INPUT "Enter start address:",A
15 A=A.AND.0FFF0H
20 C=0
30 PRINT ":10", : B=INT(A/256) : GOSUB 100 : B=A.AND.255 : GOSUB 100
40 PRINT "00", : FOR I=0 TO 15 : B=CBY(A+I) : GOSUB 100 : NEXT
50 B=C.AND.255 : GOSUB 100 : PRINT
60 IF A<0FFF0H THEN A=A+16 :GOTO 80
70 END
80 IF GET=0 THEN GOTO 20
90 END
@mit41301
mit41301 / DUMPROM.BAS
Created March 8, 2026 13:56
DUMP the internal ROM using BASIC-52
10 INPUT "Enter start address:",A
20 PH1. A, : FOR I=0 TO 15 : PRINT CHR(8), : PH0. CBY(A+I), : NEXT
30 PRINT CHR(8)," ", : FOR I=0 TO 15
40 IF CBY(A+I)>32.AND.CBY(A+I)<127 THEN P.CHR(CBY(A+I)), ELSE P. ".",
50 NEXT : PRINT : A=A+16
60 IF GET=0 THEN 20