From 8b91b45071eb4edd2a89ac12a1053ff359bb1e23 Mon Sep 17 00:00:00 2001 From: mooinglemur Date: Wed, 4 Sep 2024 21:20:10 -0700 Subject: [PATCH] [BASLOAD/X16EDIT] update BASLOAD and X16EDIT to upstream versions (#359) --- basload/.git-commit | 2 +- basload/common.inc | 3 +- basload/line.inc | 9 + basload/loader.inc | 54 +++++- basload/main.asm | 7 +- basload/option.inc | 54 +++++- basload/response.inc | 2 + basload/symfile.inc | 8 +- x16-edit/.git-commit | 2 +- x16-edit/Makefile | 22 +++ x16-edit/appversion.inc | 4 +- x16-edit/clipboard.inc | 7 +- x16-edit/cmd.inc | 178 ++++++++++++------- x16-edit/common.inc | 4 +- x16-edit/docs/manual.pdf | Bin 114442 -> 114908 bytes x16-edit/docs/manual.tex | 122 +++++++------ x16-edit/help.inc | 12 +- x16-edit/keyboard.inc | 71 +++++++- x16-edit/screen.inc | 29 ++++ x16-edit/tools/X16EDIT-KEYBINDINGS.BAS | 227 ++++++++++++++++--------- x16-edit/tools/X16EDIT-KEYBINDINGS.PRG | Bin 2391 -> 2682 bytes 21 files changed, 586 insertions(+), 231 deletions(-) diff --git a/basload/.git-commit b/basload/.git-commit index 550e2f43..c1f685e4 100644 --- a/basload/.git-commit +++ b/basload/.git-commit @@ -1 +1 @@ -d325c2f72a42179a73cbc0fdc5d78cea98e40bf0 +dde8cba3fc0702149467ffbf332a2a8e51677bc3 diff --git a/basload/common.inc b/basload/common.inc index 442aefb5..11ba9c88 100644 --- a/basload/common.inc +++ b/basload/common.inc @@ -48,6 +48,7 @@ KERNAL_ARYTAB = $03E3 KERNAL_STREND = $03E5 KERNAL_LINNUM = $d4 KERNAL_FETVEC = $ff74 +KERNAL_SAVE = $ffd8 BASIC_CHRGET = $00e7 BASIC_IGONE = $0308 @@ -64,4 +65,4 @@ KERNAL_R3 = $08 .segment "VARS" bridge_code: .res 42 rom_bank: .res 1 -.CODE \ No newline at end of file +.CODE diff --git a/basload/line.inc b/basload/line.inc index 88a087b5..4a99a564 100644 --- a/basload/line.inc +++ b/basload/line.inc @@ -204,6 +204,11 @@ symbol: bne :+ jmp next + ; Underscore chars are allowed in a symbol name, continue if found +: cmp #95 + bne :+ + jmp next + ; A symbol ended by a colon is a possible label declaration - needs further checking : cmp #':' beq symbol_chk @@ -674,6 +679,10 @@ symbol: : cmp #'.' beq symbol_cont + ; Underscores are allowed in a symbol name, continue if found + cmp #95 + beq symbol_cont + ; Decimal numbers are allowed in symbol names, continue if found cmp #'0' bcc symbol_check1 diff --git a/basload/loader.inc b/basload/loader.inc index 1eb06434..8ef4ccd3 100644 --- a/basload/loader.inc +++ b/basload/loader.inc @@ -139,7 +139,57 @@ exit: jsr symfile_close jsr file_init bridge_setaddr KERNAL_CLRCHN - bridge_call - rts + bridge_call + +saveas: + lda #BASLOAD_RAM1 + sta RAM_SEL + lda saveas_len + beq :+ + + bridge_setaddr KERNAL_SETNAM + ldx #saveas_name + lda saveas_len + bridge_call + + bridge_setaddr KERNAL_SETLFS + lda #1 + ldx #8 + ldy #1 + bridge_call + + bridge_setaddr KERNAL_SAVE + lda #$01 + sta TEMP1 + lda #$08 + sta TEMP1+1 + lda #TEMP1 + ldx line_code + ldy line_code+1 + bridge_call + + jsr file_status + cmp #0 + beq :+ + + bridge_setaddr KERNAL_CHROUT + lda #13 + bridge_call + + lda #file_buf + sta TEMP1+1 + ldy #0 +loop: + lda (TEMP1),y + cmp #0 + beq :+ + bridge_call + iny + bne loop + +: rts .endproc diff --git a/basload/main.asm b/basload/main.asm index 6937a1ea..54d04f31 100644 --- a/basload/main.asm +++ b/basload/main.asm @@ -79,6 +79,11 @@ jmp main_entry ; Copy RAM code jsr bridge_copy + ; Clear saveas filename + lda #BASLOAD_RAM1 + sta RAM_SEL + stz saveas_len + ; Select RAM bank 0 stz RAM_SEL @@ -189,4 +194,4 @@ exit: .include "response.inc" .include "pearson.inc" .include "controlcode.inc" -.include "symfile.inc" \ No newline at end of file +.include "symfile.inc" diff --git a/basload/option.inc b/basload/option.inc index 3592f660..c5bd5610 100644 --- a/basload/option.inc +++ b/basload/option.inc @@ -74,8 +74,11 @@ get_option: bne :+ jmp controlcodes : cmp #6 - bne unknown + bne :+ jmp symfile +: cmp #7 + bne unknown + jmp saveas unknown: lda #0 @@ -172,8 +175,9 @@ autonum: controlcodes: ldx index1 jsr option_get_int - bcs invalid - stx tmp + bcc :+ + jmp invalid +: stx tmp ora tmp tya ora tmp @@ -227,6 +231,41 @@ symfile_err2: lda #$fd rts +saveas: + ldx index1 + jsr option_get_string + sta saveas_len + + cmp #0 + bne :+ + + lda #RESPONSE_NO_FILENAME + clc + jsr response_set + lda #$fe + rts + +: stx TEMP1 + sty TEMP1+1 + + tay + dey + + ldx RAM_SEL + phx + ldx #BASLOAD_RAM1 + stx RAM_SEL + +: lda (TEMP1),y + sta saveas_name,y + dey + cpy #$ff + bne :- + + pla + sta RAM_SEL + rts + invalid: lda #$fe rts @@ -314,6 +353,7 @@ options_tbl: .byt "autonum", 0 .byt "controlcodes", 0 .byt "symfile", 0 + .byt "saveas", 0 .byt 0 .segment "VARS" @@ -456,5 +496,11 @@ eos: index1: .res 1 quotes: .res 1 len: .res 1 +.endproc + +.segment "VARS" + saveas_len: .res 1 + +.segment "RAM1" + saveas_name: .res 256 .CODE -.endproc \ No newline at end of file diff --git a/basload/response.inc b/basload/response.inc index 79d0b25d..745e3eb8 100644 --- a/basload/response.inc +++ b/basload/response.inc @@ -41,6 +41,7 @@ RESPONSE_INVALID_PARAM = 11 RESPONSE_INVALID_CONTROLCODE = 12 RESPONSE_INVALID_SYMFILE = 13 RESPONSE_SYMFILE_IO_ERR = 14 +RESPONSE_NO_FILENAME = 15 ; Response messages msg_ok: .byt "success", 0 @@ -58,6 +59,7 @@ msg_invalid_param: .byt "invalid parameter in ", 0 msg_invalid_controlcode: .byt "invalid control code in ",0 msg_invalid_symfile: .byt "symfile not allowed in ", 0 msg_symfile_io_err: .byt "couldn not open symfile in ", 0 +msg_no_filename: .byt "filename not specified ", 0 ; Response message pointers msg_pointers: diff --git a/basload/symfile.inc b/basload/symfile.inc index 18a838fd..1dea8679 100644 --- a/basload/symfile.inc +++ b/basload/symfile.inc @@ -168,7 +168,7 @@ err: msg: .byt .sprintf("basload %u.%u.%u symbol file", appversion_major, appversion_minor, appversion_patch) - .byt 10, 10, 10, 10, "labels", 10, "------", 10, 0 + .byt 10, 10, 10, 10, "labels", 10, "------", 0 .endproc ;****************************************************************************** @@ -197,7 +197,7 @@ err: rts msg: - .byt 10,10,10,10, "variables", 10, "---------", 10, 0 + .byt 10,10,10,10, "variables", 10, "---------", 0 .endproc ;****************************************************************************** @@ -432,7 +432,7 @@ err: rts file_lbl: - .byt "file: ",0 + .byt 10,10,"file: ",0 .endproc ;****************************************************************************** @@ -533,4 +533,4 @@ line_start: symbol_start: .res 1 symbol_end: .res 1 .CODE -.endproc \ No newline at end of file +.endproc diff --git a/x16-edit/.git-commit b/x16-edit/.git-commit index 58086ec4..6dab987c 100644 --- a/x16-edit/.git-commit +++ b/x16-edit/.git-commit @@ -1 +1 @@ -d77d0002f62cd468c885449f45781222889ded56 +f954dc8413222c7fb61ef2a30a77be3b31d07eaa diff --git a/x16-edit/Makefile b/x16-edit/Makefile index f3317eca..3b6245cc 100644 --- a/x16-edit/Makefile +++ b/x16-edit/Makefile @@ -6,6 +6,8 @@ SRC_FILES=$(wildcard *.asm) $(wildcard *.inc) # Commands ram: $(BUILD_DIR)/X16EDIT.PRG rom: $(BUILD_DIR)/x16edit-rom.bin +ram_alt: $(BUILD_DIR)/X16EDIT-ALT.PRG +rom_alt: $(BUILD_DIR)/x16edit-alt-rom.bin all: $(BUILD_DIR)/X16EDIT.PRG $(BUILD_DIR)/x16edit-rom.bin # Target that compresses default help file @@ -13,21 +15,41 @@ $(BUILD_DIR)/help.bin: help.txt @mkdir -p $(BUILD_DIR) lzsa -r -f2 $? $@ +# Target that compresses default help file +$(BUILD_DIR)/help_alt.bin: help_alt.txt + @mkdir -p $(BUILD_DIR) + lzsa -r -f2 $? $@ + # Target that compresses condensed help file for low res screens $(BUILD_DIR)/help_short.bin: help_short.txt @mkdir -p $(BUILD_DIR) lzsa -r -f2 $? $@ +# Target that compresses condensed help file for low res screens (alternative shortcuts) +$(BUILD_DIR)/help_alt_short.bin: help_alt_short.txt + @mkdir -p $(BUILD_DIR) + lzsa -r -f2 $? $@ + # Target for RAM program $(BUILD_DIR)/X16EDIT.PRG: $(BUILD_DIR)/help.bin $(BUILD_DIR)/help_short.bin $(SRC_FILES) @mkdir -p $(BUILD_DIR) cl65 --asm-args -Dtarget_mem=1 -g -o $@ -u __EXEHDR__ -t cx16 -C $(CONF_DIR)/cx16-asm.cfg --mapfile $(BUILD_DIR)/x16edit-ram.map -Ln $(BUILD_DIR)/x16edit-ram.sym -l $(BUILD_DIR)/x16edit-ram.lst main.asm +# Target for RAM program (alternative shortcuts) +$(BUILD_DIR)/X16EDIT-ALT.PRG: $(BUILD_DIR)/help_alt.bin $(BUILD_DIR)/help_alt_short.bin $(SRC_FILES) + @mkdir -p $(BUILD_DIR) + cl65 --asm-args -Dtarget_mem=1 --asm-args -Dalt_shortcuts=1 -g -o $@ -u __EXEHDR__ -t cx16 -C $(CONF_DIR)/cx16-asm.cfg --mapfile $(BUILD_DIR)/x16edit-ram.map -Ln $(BUILD_DIR)/x16edit-ram.sym -l $(BUILD_DIR)/x16edit-ram.lst main.asm + # Target for ROM program $(BUILD_DIR)/x16edit-rom.bin: $(BUILD_DIR)/help.bin $(BUILD_DIR)/help_short.bin $(SRC_FILES) @mkdir -p $(BUILD_DIR) cl65 --asm-args -Dtarget_mem=2 -g -o $@ -t cx16 -C $(CONF_DIR)/x16edit-rom.cfg --mapfile $(BUILD_DIR)/x16edit-rom.map -Ln $(BUILD_DIR)/x16edit-rom.sym -l $(BUILD_DIR)/x16edit-rom.lst main.asm +# Target for ROM program (alternative shortcuts) +$(BUILD_DIR)/x16edit-alt-rom.bin: $(BUILD_DIR)/help_alt.bin $(BUILD_DIR)/help_alt_short.bin $(SRC_FILES) + @mkdir -p $(BUILD_DIR) + cl65 --asm-args -Dtarget_mem=2 --asm-args -Dalt_shortcuts=1 -g -o $@ -t cx16 -C $(CONF_DIR)/x16edit-rom.cfg --mapfile $(BUILD_DIR)/x16edit-rom.map -Ln $(BUILD_DIR)/x16edit-rom.sym -l $(BUILD_DIR)/x16edit-rom.lst main.asm + # Clean-up target clean: rm -f $(BUILD_DIR)/* diff --git a/x16-edit/appversion.inc b/x16-edit/appversion.inc index f565303c..df51473b 100644 --- a/x16-edit/appversion.inc +++ b/x16-edit/appversion.inc @@ -1,9 +1,9 @@ .define appversion_major 0 .define appversion_minor 8 -.define appversion_patch 2 +.define appversion_patch 3 .if target_mem=target_rom .segment "APPSIG" .byt "x16edit", appversion_major, appversion_minor, appversion_patch .CODE -.endif \ No newline at end of file +.endif diff --git a/x16-edit/clipboard.inc b/x16-edit/clipboard.inc index 3f9cad0f..9b2996d0 100644 --- a/x16-edit/clipboard.inc +++ b/x16-edit/clipboard.inc @@ -186,8 +186,9 @@ full: jsr clipboard_copy bcs mem_full - lda clipboard_count - lda clipboard_count+1 + stz selection_active + stx clipboard_count + sty clipboard_count+1 : lda clipboard_count ora clipboard_count+1 @@ -275,4 +276,4 @@ exit: .CODE CLIPBOARD_SIZE = 12 ;In pages each of 256 bytes -CLIPBOARD_UNCUT = %00000001 \ No newline at end of file +CLIPBOARD_UNCUT = %00000001 diff --git a/x16-edit/cmd.inc b/x16-edit/cmd.inc index 0bc42720..fc6e49cf 100644 --- a/x16-edit/cmd.inc +++ b/x16-edit/cmd.inc @@ -2229,95 +2229,140 @@ msg_off: ;****************************************************************************** ;Function name.......: cmd_change_encoding -;Purpose.............: Changes the current encoding (charset) used by the -; program, i.e. ISO, PETSCII upper case or PETSCII -; lower case +;Purpose.............: Inits character encoding change ;Preparatory routines: None ;Input...............: Nothing ;Returns.............: Nothing ;Error returns.......: None .proc cmd_change_encoding + lda #16 + sta APP_MOD jsr cursor_disable + jsr screen_print_encoding_ctx_footer + lda KERNAL_MODE + and #$0f + sta cmd_encoding_mode + jmp cmd_encoding_show +.endproc - inc screen_mode - - lda screen_mode - cmp #1 - beq petscii_uc - cmp #2 - beq petscii_lc - stz screen_mode - -iso: - bridge_setaddr KERNAL_CHROUT - lda #$0f - bridge_call KERNAL_CHROUT - bra exit +;****************************************************************************** +;Function name.......: cmd_encoding_show +;Purpose.............: Display name of the specified character encoding in +; the status bar +;Preparatory routines: None +;Input...............: A = character encoding (1..11) +; Input out of the valid range is ignored +;Returns.............: Nothing +;Error returns.......: None +.proc cmd_encoding_show + ; Validate input + cmp #0 + beq err + cmp #12 + bcs err -petscii_uc: - bridge_setaddr KERNAL_CHROUT - lda #$8f - bridge_call KERNAL_CHROUT - lda #$8e - bridge_call KERNAL_CHROUT - bra exit + ; Get encoding name start index + dea + asl + tay + lda encs,y + tax + lda encs+1,y + tay -petscii_lc: - bridge_setaddr KERNAL_CHROUT - lda #$0e - bridge_call KERNAL_CHROUT + ; Display name + jmp screen_print_status -exit: - lda #16 - sta APP_MOD +err: + ; Invalid input, ignore rts + +encs: + .word enc1, enc2, enc3, enc4, enc5, enc6, enc7, enc8, enc9, enc10, enc11 +enc1: + .byt "iso", 0 +enc2: + .byt "pet upper", 0 +enc3: + .byt "pet lower", 0 +enc4: + .byt "pet upper thin", 0 +enc5: + .byt "pet lower thin", 0 +enc6: + .byt "iso thin", 0 +enc7: + .byt "cp437", 0 +enc8: + .byt "cyrillic", 0 +enc9: + .byt "cyrillic thin", 0 +enc10: + .byt "eastern latin", 0 +enc11: + .byt "eastern latin thin", 0 .endproc ;****************************************************************************** -;Function name.......: cmd_refresh_after_encoding_changed -;Purpose.............: Refresh screen after encoding was changed +;Function name.......: cmd_encoding_set +;Purpose.............: Set a new character encoding and update the screen ;Preparatory routines: None -;Input...............: Nothing +;Input...............: A = character encoding (1..11) +; Input out of the valid range is ignored ;Returns.............: Nothing ;Error returns.......: None -.proc cmd_refresh_after_encoding_changed - jsr screen_clearall - jsr screen_print_header - jsr screen_print_default_footer - jsr screen_refresh - - jsr cursor_activate +.proc cmd_encoding_set + ; Validate input + cmp #0 + beq err + cmp #12 + bcs err + + ; Store mode and update charset + sta KERNAL_MODE + bridge_setaddr KERNAL_SET_CHARSET + lda KERNAL_MODE + bridge_call KERNAL_SET_CHARSET + ; ISO? + lda KERNAL_MODE + cmp #1 + beq iso + cmp #6 + bcs iso + + ; PETSCII uppercase/graphics? + and #1 + beq petuc + +petlc: lda #2 - sta APP_MOD + bra exit - lda screen_mode - cmp #1 - beq pet_uc - cmp #2 - beq pet_lc +petuc: + lda #1 + bra exit iso: - ldx #msg_iso - jmp screen_print_status - -pet_uc: - ldx #msg_puc - jmp screen_print_status + ora #$40 + sta KERNAL_MODE + bridge_setaddr KERNAL_EXTAPI + clc + ldx #$9f + lda #$05 + bridge_call KERNAL_EXTAPI + lda #0 -pet_lc: - ldx #msg_plc - jmp screen_print_status +exit: + sta screen_mode + jsr screen_clearall + jsr screen_print_header + jsr screen_print_default_footer + jsr screen_refresh + jmp cursor_activate -msg_iso: - .byt "iso charset",0 -msg_puc: - .byt "petscii upper case/graphics",0 -msg_plc: - .byt "petscii upper/lower case", 0 +err: + rts .endproc ;****************************************************************************** @@ -2654,4 +2699,5 @@ msg: cmd_wordwrap_mode: .res 1 cmd_wordwrap_pos: .res 1 cmd_display_msg: .res 59 -.CODE \ No newline at end of file + cmd_encoding_mode: .res 1 +.CODE diff --git a/x16-edit/common.inc b/x16-edit/common.inc index 5c3871cc..2b6daaba 100644 --- a/x16-edit/common.inc +++ b/x16-edit/common.inc @@ -56,6 +56,8 @@ .define KERNAL_MCIOUT $feb1 .define KERNAL_SCREEN_MODE $ff5f .define KERNAL_FETCH $ff74 +.define KERNAL_SET_CHARSET $ff62 +.define KERNAL_EXTAPI $feab ;Keyboard & mouse .define KERNAL_GETIN $ffe4 @@ -195,4 +197,4 @@ help_txt = $b900 ;1792 bytes ($b900 .define SCREEN_HEIGHT 15 .else .error "Unsupported screen mode" -.endif \ No newline at end of file +.endif diff --git a/x16-edit/docs/manual.pdf b/x16-edit/docs/manual.pdf index 0c585992a04dce7b1503aa0b9c821d9935ee1749..32dba57aeb2d33b278b1dbf909622837178e5753 100644 GIT binary patch delta 43138 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 jmp screen_print_footer +.ifndef alt_shortcuts row1: .byt ":^g get help :^o write out :^y prev page :^k cut :^c copy", 0 row2: @@ -465,6 +466,17 @@ row1_narrow: .byt ":^g get help :^o write out", 0 row2_narrow: .byt ":^x exit :^r open file", 0 +.else +row1: + .byt ":^p get help :^s save :^u prev page :^x cut :^c copy", 0 +row2: + .byt ":^w exit :^o open file :^y next page :^v paste :^f find", 0 + +row1_narrow: + .byt ":^p get help :^s save", 0 +row2_narrow: + .byt ":^w exit :^o open file", 0 +.endif .endproc ;****************************************************************************** @@ -517,6 +529,23 @@ row2: .byt 0 .endproc +;****************************************************************************** +;Function name.......: screen_print_encoding_ctx_footer +;Purpose.............: Prints context footer for changing charset +;Input...............: None +;Returns.............: Nothing +;Error returns.......: None +.proc screen_print_encoding_ctx_footer + ldx #row1 + jmp screen_print_footer + +row1: + .byt "select charset", 0 +row2: + .byt ":rt next charset :lt prev charset", 0 +.endproc + ;****************************************************************************** ;Function name.......: screen_refresh ;Purpose.............: Refreshes editor area. Print will start diff --git a/x16-edit/tools/X16EDIT-KEYBINDINGS.BAS b/x16-edit/tools/X16EDIT-KEYBINDINGS.BAS index e8a138f5..30f3569d 100755 --- a/x16-edit/tools/X16EDIT-KEYBINDINGS.BAS +++ b/x16-edit/tools/X16EDIT-KEYBINDINGS.BAS @@ -1,4 +1,13 @@ -PRINT +## BASLOAD PETSCII UG CRLF +## PROGRAMMING BY STEFAN JAKOBSSON AND TOM TARDIS + +FILENAME$="/X16EDITRC" +KEYCOL=22 +KEYROW=18 + +GOSUB SETDEFAULTS + +CLS PRINT"********************************" PRINT"X16 EDIT KEY BINDING CONFIG TOOL" PRINT"********************************" @@ -14,104 +23,164 @@ PRINT PRINT"CHARACTERS AND BYTE VALUES MUST MATCH THE VALUE RETURNED BY KERNAL" PRINT"FUNCTION GETIN ($FFE4)." PRINT -PRINT"PRESS ENTER TO KEEP THE DEFAULT VALUE IN PARENTHESES." +PRINT"PRESS ENTER TO KEEP THE CURRENT VALUE." PRINT -GOSUB SETDEFAULTS - REM ************************** REM GET USER DEFINED SHORTCUTS REM ************************** -FOR I=0 TO 22 - K$="" - READ D$ - PRINT D$; - INPUTK$ - GOSUB PARSENUM - IF K$<>"" THEN K(I)=ASC(K$) -NEXT I +SHOWKEYS: + RESTORE + LOCATE KEYROW,1 + FOR I=0 TO 25 + K$="" + READ D$ + PRINT D$;TAB(KEYCOL);": "; + COLOR 7 + IF K(I)>=64 AND K(I)<=90 THEN PRINT CHR$(K(I)):GOTO PL1 + COLOR 3 + PRINT CHR$(157);K(I) + PL1: + COLOR 1 + NEXT I -PRINT +SHOW.MENU: + PRINT + INPUT "[�S]AVE [�E]DIT [�R]ESET [�Q]UIT";A$ + IF A$="R" THEN DELETE.CFG + IF A$="E" THEN EDIT.KEYS + IF A$="Q" THEN PRINT:PRINT "EXITING WITHOUT SAVE":END + IF A$="S" THEN WRITE +GOTO SHOW.MENU -CONFIRM: - INPUT"WRITE CONFIGURATION TO :/X16EDITRC (Y/N)"; A$ - IF A$="N" THEN END - IF A$<>"Y" THEN CONFIRM +EDIT.KEYS: + RESTORE + LOCATE KEYROW,1 + FOR I=0 TO 25 + K$="" + READ D$ + PRINT D$;TAB(KEYCOL);": "; + COLOR 7 + LINPUT K$ + COLOR 1 + GOSUB PARSENUM + IF K$<>"" THEN K(I)=ASC(K$) + NEXT I +GOTO SHOW.MENU WRITE: - OPEN 1,8,4,"@:/X16EDITRC,S,W" - FOR I=0 TO 22 - PRINT#1,CHR$(K(I)); - NEXT I - CLOSE 1 + PRINT "SAVING TO ";FILENAME$ + OPEN 1,8,4,"@:"+FILENAME$+",S,W" + FOR I=0 TO 25 + PRINT#1,CHR$(K(I)); + NEXT I + CLOSE 1 + DOS + PRINT "COMPLETE" +END - END +DELETE.CFG: + DOS"S:/"+FILENAME$ +GOTO SHOW.MENU PARSENUM: - IF LEN(K$)<>3 THEN RETURN - FOR V=1 TO 3 - V1=ASC(MID$(K$,V,1)) - IF V1<48 OR V1>57 THEN RETURN - NEXT V - K$ = CHR$(ASC(MID$(K$,3,1))-48 + (ASC(MID$(K$,2,1))-48)*10 + (ASC(MID$(K$,1,1))-48)*100) - RETURN - + V=VAL(K$) + IF V=0 AND LEN(K$)>1 THEN PN.ERROR + IF V=0 THEN PN.DONE + IF V <1 OR V>255 THEN PN.ERROR + K$=CHR$(V) + GOTO PN.DONE + + PN.ERROR: + LOCATE KEYROW+I,KEYCOL-5 + PRINT " ERROR" + + PN.DONE: +RETURN REM ********************* REM SET DEFAULT SHORTCUTS REM ********************* SETDEFAULTS: - DIM K(23) - K(0)=ASC("G") - K(1)=ASC("X") - K(2)=ASC("O") - K(3)=ASC("R") - K(4)=ASC("N") - K(5)=ASC("J") - K(6)=ASC("Y") - K(7)=ASC("V") - K(8)=ASC("K") - K(9)=ASC("C") - K(10)=ASC("U") - K(11)=25 - K(12)=ASC("W") - K(13)=ASC("S") - K(14)=ASC("L") - K(15)=ASC("A") - K(16)=ASC("Z") - K(17)=ASC("E") - K(18)=ASC("I") - K(19)=ASC("D") - K(20)=ASC("T") - K(21)=ASC("B") - K(22)=ASC("M") - RETURN + DIM K(25) + K(0)=ASC("G") + K(1)=ASC("X") + K(2)=ASC("O") + K(3)=ASC("R") + K(4)=ASC("N") + K(5)=ASC("J") + K(6)=ASC("Y") + K(7)=ASC("V") + K(8)=ASC("K") + K(9)=ASC("C") + K(10)=ASC("U") + K(11)=25 + K(12)=ASC("W") + K(13)=ASC("S") + K(14)=ASC("L") + K(15)=ASC("A") + K(16)=ASC("Z") + K(17)=ASC("E") + K(18)=ASC("I") + K(19)=ASC("D") + K(20)=ASC("T") + K(21)=ASC("B") + K(22)=ASC("M") + K(23)=ASC("F") + K(24)=13 + K(25)=ASC("Q") + PRINT "READING ";FILENAME$ + PRINT + OPEN 8,8,8,FILENAME$+",S,R" + OPEN 15,8,15 + INPUT#15,A,A$ + IF A<>0 THEN NOFILE + FOR I=0 TO 25 + GET#8,A$ + IF ST=64 THEN I=999:GOTO R1 + K(I)=ASC(A$) + R1: + NEXT + GOTO SETDEF.DONE + NOFILE: + PRINT + PRINT A;A$; + PRINT ": USING DEFAULTS" + PRINT "[PRESS RETURN]"; + LINPUT A$ + SETDEF.DONE: + CLOSE 8 + CLOSE 15 +RETURN REM ************************** REM PROMPT STRINGS REM ************************** -DATA"GET HELP (G)" -DATA"EXIT PROGRAM (X)" -DATA"WRITE TO FILE (O)" -DATA"READ FILE (R)" -DATA"NEW BUFFER (N)" -DATA"JUSTIFY BUFFER (J)" -DATA"PAGE UP (Y)" -DATA"PAGE DOWN (V)" -DATA"CUT LINE (K)" -DATA"COPY LINE (C)" -DATA"PASTE CLIPBOARD (U)" -DATA"DELETE LINE (DEL)" -DATA"SEARCH (W)" -DATA"REPLACE (S)" -DATA"GOTO LINE NUMBER (L)" -DATA"AUTO INDENT (A)" -DATA"WORD WRAP (Z)" -DATA"CHANGE CHARSE T (E)" -DATA"INVOKE DOS COMMAND (I)" -DATA"SET DEVICE NUMBER (D)" -DATA"CHANGE TEXT COLOR (T)" -DATA"CHANGE BG COLOR (B)" -DATA"SHOW MEMORY USAGE (M)" \ No newline at end of file +DATA"GET HELP" +DATA"EXIT PROGRAM" +DATA"WRITE TO FILE" +DATA"READ FILE" +DATA"NEW BUFFER" +DATA"JUSTIFY BUFFER" +DATA"PAGE UP" +DATA"PAGE DOWN" +DATA"CUT LINE" +DATA"COPY LINE" +DATA"PASTE CLIPBOARD" +DATA"DELETE LINE" +DATA"SEARCH" +DATA"REPLACE" +DATA"GOTO LINE NUMBER" +DATA"AUTO INDENT" +DATA"WORD WRAP" +DATA"CHANGE CHARSET" +DATA"INVOKE DOS COMMAND" +DATA"SET DEVICE NUMBER" +DATA"CHANGE TEXT COLOR" +DATA"CHANGE BG COLOR" +DATA"SHOW MEMORY USAGE" +DATA"PRG TOOLBOX" +DATA"LINE BREAK ENCODING" +DATA"QUOTE MODE" diff --git a/x16-edit/tools/X16EDIT-KEYBINDINGS.PRG b/x16-edit/tools/X16EDIT-KEYBINDINGS.PRG index 527d0b4923fe9380f0ef40a0feef102c05d50f46..525f7260ed8b9b6f99ff18c0501d85cf214196ac 100755 GIT binary patch literal 2682 zcma);TZ~&r8OOg+ws`I1+qR_?N;6DNSr<3)v3$L1P3tYF$>6uvU z|BCnZ*fg!vbFnx^hrVdb8mAw}5@4518(;_;cy5<9I>Hl;KzcrNJystDlC6ktD1Fuw zkRX|K&?%eDc39AntmSsQ?f|klh0{p{3I;A4h>>4ovu2(N*7s~D5cRIy4*kkd!e@Ti z=y3YtbP5q>OL-l7dvWHrnBzLvy-KWC)76v>yC-1IOVeq@Yq?&J4eX%9LTwqlQSW0Hr$jsp1HEG|y3b?~Y%h^oC9&uw93>WdN6FbFG%F~xyeFty#9mPsFkm+mCLj%u@f`OBod6!Wm(GM88bDZL7V^$LqCqE{8VEZR@;n!+`l%jMom*i;3B-fj%Ew z7X2}ir?s+0e@R>m2X`26zu;iXC~P};g>l^l2f48;a@&TVi$j;xw|AD-s&bilB*Q%8)dmh_Y{heUvIwGZR~oXF9{ zn5R=_VZKl)@EdCUjL4ng1-~%hblzCl7W`AAMo*cAf4!|m`jxS$qrYIhgHD_DTjQOy zd5HdMT(5H5Rfi*xoL)BGMF+`9-hfW-*LJG~=+dOnf_Sn{qB{9rBzHd9z)q@@;@R(N zuwjnpN+grbh>qtfG)hXWSiD7@?f%~jXxtw1yTHp zMaPpigfZ!PuE*)g-)2SOZiKKQxCaJxe zL|O&NbE%s&iNxLr^7GWHCXreR@?z@UnnZGKkiVsF)+Ex~1ToULC{l{_1|V0Z-=j(7 zZ5^bTzEzV*a}T7RzD<)za|@)Oey=9bY?kTP^!s!x(z}fQ{pt7P4SQ1PqNkJlKzbkU zh!g1#(5ZQ(_eKmbMJ%EN#{~UcQ{UM~8b#9|LHq8qCF#X}} zgYdKT9rXFD5eegdm;MMH^#fdKV_c033k$V1(=5@;={uD)+;-|DS~!UpWj;!W$;f<+ zFkpdZG9QPmote9E-Ys<?1<>40iQRXuMjvTOhh_V9Xex11=WCjC;MH|K-~MYkD%Fhu_Lt*bHZL-sXm!q0~aAUzKT%r zI6a;HEYQI9nrz?+i2i2wC;;lRgI%cdjKaa``Rt>hwzJ~y!6$(0<8!LlL&fIw`|L6F zsOr*`D|Tahv8kEk+kpZ(3^1pwuAM7q9^3Ayt1mN+t(g-lP{$pxp6t2a2x$N(Idx_p wM@Qd_KHlo?kkf55CxP_d>Ud9kP|_Q&%6LxuXP!XUa_GXUp4-HHqW!~v0w2nx;Q#;t literal 2391 zcma)8O^n+_82w6tW@9@^MJeTfFln(%+Ksc@-R&;WI`Jg&#<7Ec;-vf(%Adpq331`n zAGGDLP>Q%vB%nx@76B@BD^3(RAgF{m6sZ>~Bt*rj7o=W59Dq0W?k1E~!MFF`%$qmg zH<`(r%(~1PI!2?JYv`D|^*=t9;>=o%>lqV_TXx7=yw9q(YuRpt)jYRuH(2O-j!OG8 z*ZwcRxy*G~{f*4^7##&>gHNk;EVB;W#Y_eqOheyuSgmRLW-a7?z&xK-`yppt(}{S% z+9o1!#$AZqVz$e|CTDfeal9C@R4R^)z$lD87MuNGnrVj4OxE#jH#DmbA6Q>$WdhB7+f}+SqM(4qY!2d3;Y`>1XXT~dh zcS^Sdk0sa#9+mC@9#60fyi2+hct?U~fjx-gtSHq*!@?=1oL! z)rAA}jIv80EYepOCJdTWcGJ5?X{t0{Qg;s-l!8*M((8)3vXl3eD!plx&T1l?K11&- zHIeIM#iHW|eX4LeKwm3$n*U0~K7DFz;Ru~m8g#I`Xq*_MUz8?w4eaS#$fa({&~^Gv zv1z_*oF1S0q-&hoF^L&}DzkK`OSN1}l(EQ8I3`W*blBk28oEk9<{pH~ zdw7aq-0;oz(g3Xo^^cqnHSHq$R=07JCZFa(-INcY`rNdJ6d`Lq)QNlu)#Wj(M!4ww zbfQqvZwm7f)LC4hb{)^pV1zac_4#}kY6q_wi-sfPv_L(YkC#=;i`^Atrgfp7%=e(; zdSecL4+D{DEvVn+`$F|P{VQax2K7>YPvRViQ|s8Bs%QF^u+So?nZiR*E$(p019J@w z)GdXFp$6Ra@f-|)S`5`HJOb6{9mlK{T}>*c3FiZay->{v zD*h?p(qDGhOsMY^9)lWt2paq5P_?u@P|p+|hl)4MMJ>fs7GQN@pmC@d3j3hiZr5w! z+4KVZRNHOw%Hfxz((i>QpawWO7Vp}Ky&Oxkpl)3M