commit d089d50eabdcd8179fbcb39c660e574b65733d82 from: Sven M. Hallberg date: Sun May 31 18:14:32 2026 UTC BASASM.23 commit - 09d199d623ec10bec6ec8055610375c0407cc5ae commit + d089d50eabdcd8179fbcb39c660e574b65733d82 blob - aba778c9ba7591f06128295935e39c92f3101fec blob + ba9a340a1ee8b23f27e0205a0374261e0fbf467e Binary files BASASM,PRG and BASASM,PRG differ blob - f9f2e4790523ff1c4cec2e9dd53f9e498df72961 blob + b5f79980d87e933e152e10768138832a99e69821 --- BASASM.lst +++ BASASM.lst @@ -1,5 +1,5 @@ 0 REM BASASM - A SIMPLE ASSEMBLER MADE -1 REM V.22 IN BASIC. PESCO 2026 +1 REM V.23 IN BASIC. PESCO 2026 2 REM 10 VARIABLES 700 *SAVE TO PRG 3 REM 100 LOAD OPCODES 720 *PRINT SEQ F 4 REM 130 SUBROUTINES 740 *MEMSTAT @@ -180,6 +180,7 @@ 441 IF M$ = ".DSZ" THEN 570 445 IF M$ = ".DZ" THEN 580 450 IF M$ = ".=" THEN 520 +455 IF M$ = ".LIM" THEN 590 490 IF M$ = ".END" THEN 510 495 PRINT " UNRECOGNIZED" 496 END @@ -230,6 +231,12 @@ 582 IF A <= 0 THEN PRINT N: GOTO 499 584 POKE P,0: P=P+1 586 A=A-1: GOTO 582 +588 REM +589 REM .LIM - LIMIT OUTPUT POSITION +590 READ A$: GOSUB 150 +591 PRINT MID$(STR$(A), 2) +592 IF P <= A THEN 499: REM POS VALID +593 PRINT "LIMIT VIOLATED": END 697 REM 698 REM *RUN 700* WRITE MEM TO PRG FILE 699 REM blob - 554d0f789071ecf60065b43ff6923fc424438895 blob + d2109d091f0b5e5fdae6f1e9d8002546a48a423a Binary files TEST.B,PRG and TEST.B,PRG differ blob - 79ca3cd0374c696c037a0c8b64ffb90d60c70b5e blob + a4c0d330745e968e58f0ba12d06f67b9683672f0 --- TEST.B.lst +++ TEST.B.lst @@ -14,9 +14,11 @@ 1023 DATA HALLO=, -555 1024 DATA .DB, -1 $16, .DW, HALLO $4242 1025 DATA $00, 79, $4D, 16, 39 +1026 DATA .LIM, 49200 1029 DATA .=, 49200, .DZ, 10 -1030 DATA AND#, 255 -1040 DATA ORA, $C80A+ +1030 DATA .LIM, 49210 +1040 DATA AND#, 255 +1041 DATA ORA, $C80A+ 1050 DATA JMP, START+ 2000 DATA .=,49200, BEQR, FAR+ 2001 DATA .=,49328, 'FAR