Similar to TheDraw (for IBM PC) and PETDraw: a single full-screen text mode scene editor.
Intended to help draft up "semi-graphic" designs with whatever is the active loaded font. There were a few features I wanted beyond PETDraw, plus just an excuse to see if BASLOAD could handle this. The SAVE/LOAD is now fast!
Some other special features:
- Block POSITION MODE (move block sub-portions of the scene quickly) [ P-key ]
- WRITE MODE: write plain text, while preserving existing colors [ W-key ]
- BACKGROUND COLOR replacement option (swap out a selected background color with a new one) [ B-key ]
- BLENDED file load (import files without overwriting content of current scene). [ F7 ]
- MOUSE and GAMEPAD supported.
- Customized "font symbol palette" along the status bar at the bottom
F1 for help while in the program or see the included README.TXT
Try It Now!
Text Mode Scene Editor (with mouse and gamepad support!)
Text Mode Scene Editor (with mouse and gamepad support!)
- Attachments
-
- EDITORv1_4.ZIP
- (380.44 KiB) Downloaded 9 times
-
- EDITOR.BASL.TXT
- (62.28 KiB) Downloaded 8 times
-
- README.TXT
- (9.16 KiB) Downloaded 5 times
-
- SCREEN_EDITOR2.jpg (263.31 KiB) Viewed 1154 times
Last edited by Xiphod on Wed Jan 15, 2025 6:02 pm, edited 10 times in total.
Re: Text Mode Scene Editor (with mouse support!)
New Version 1.2A: (updated attachment in first post)
- MCIOUT now being used for much faster VRAM saving of full scene.
- Added GAMEPAD support! See end of the README.TXT for the supported button combinations. But basically:
* press A-BUTTON and move around on gamepad to draw
* use B-BUTTON while moving around to erase
Other combinations used to change text colors, symbol indexes, and can issue a QUICK SAVE/LOAD using SELECT and the TOP LEFT/TOP RIGHT buttons.
NOTE: 1.2A fixes an issue where JOY0 and KBD was causing a stutter during key cursor movement.
Technically does support any of the 4-gamepad inputs. But would be better if each gamepad had its own symbol palette.
Thinking about using the last 5 columns as a palette editor (so you can scroll across colors and also adjust them). But this does all I needed it for - if anyone needs extra EXPORT options (like to a coded sequence), just let me know.
- MCIOUT now being used for much faster VRAM saving of full scene.
- Added GAMEPAD support! See end of the README.TXT for the supported button combinations. But basically:
* press A-BUTTON and move around on gamepad to draw
* use B-BUTTON while moving around to erase
Other combinations used to change text colors, symbol indexes, and can issue a QUICK SAVE/LOAD using SELECT and the TOP LEFT/TOP RIGHT buttons.
NOTE: 1.2A fixes an issue where JOY0 and KBD was causing a stutter during key cursor movement.
Technically does support any of the 4-gamepad inputs. But would be better if each gamepad had its own symbol palette.
Thinking about using the last 5 columns as a palette editor (so you can scroll across colors and also adjust them). But this does all I needed it for - if anyone needs extra EXPORT options (like to a coded sequence), just let me know.
Re: Text Mode Scene Editor (with mouse and gamepad support!)
V1.2A update, fixed a little bug where keyboard cursor was "double detected" (due to using JOY0 incorrectly at the same time). Cause the cursor to stutter a bit during movement. One line fix, no other changes.
Re: Text Mode Scene Editor (with mouse and gamepad support!)
More nice work... I had a go of it, Works well...
You can easily make and design PETSCII art... can be fun.... & I like the cursor !
Found a little bug, Pressed 'A' straight after boot & it crashed... I suppose I had to find that 1 thing lol....
(it was an accident, I didn't mean too "Honestly" )....
I like it.....
You can easily make and design PETSCII art... can be fun.... & I like the cursor !
Found a little bug, Pressed 'A' straight after boot & it crashed... I suppose I had to find that 1 thing lol....
(it was an accident, I didn't mean too "Honestly" )....
I like it.....
Re: Text Mode Scene Editor (with mouse and gamepad support!)
Good find - a "color behind the cursor" wasn't initialized yet, so "A" was trying to apply that color. The cursor needed to flash a cycle to get that initialized. But have that fixed now, and have a few more features in the works for the next update.
Thanks for trying it out! Yea, I like my "crazy random cursor", stands out no matter what the scene is
Thanks for trying it out! Yea, I like my "crazy random cursor", stands out no matter what the scene is
Re: Text Mode Scene Editor (with mouse and gamepad support!)
Lots of updates for V1.3 ! Some exciting stuff...
- Added F1 help. Cause I kept forgetting my own keyboard shortcuts too!
- Position Mode! Press P to lock a starting spot, move the cursor down and right to where you want to set a square copy-block (remember your locked starting position), then use SHIFT+Arrow Keys to start moving that block (the cursor shifts with you). Makes it super easy to relocate portions of a scene. It is a destructive relocation, so it will overwrite anything you relocate over. Intended for repositioning small parts of the scene. ENTER or ESC to exit the Position Mode.
- Write Mode! Press W to write out a sequence of plain text into the scene. It will prompt what text you want to write. But a special thing here is, it will also maintain whatever color attributes you currently have in the scene.
(TheDraw had "fonts" - so yea, I might do that next; at least semi-big-font)
- Added keyboard commands to insert/delete a row/col. Helps move the scene around if your content has ended up too close to one of the edges.
CTRL+K / CTRL+I DELETE ROW / INSERT ROW
CTRL+U / CTRL+Y DELETE COLUMN / INSERT COLUMN
- F4 now to revert back to the default/standard font symbol sequence. So you can swap to your custom one (F3) and the system-default one (F4) without restarting.
- F9/F10 key short-cuts to the QuickSave Save/Load (was previously just on the gamepad, oops)
- Fixed the "A" bug (it will report "NOPE" until it has figured out a color to be applied; a color to apply isn't decided until you STAMP {SPACE} or press "C" to get a color)
- Fixed a bug where text input could go 1 past the edge of the screen
- Added the X16.BIN sample, which I used this scene editor to create
Update is in the first post.
- Added F1 help. Cause I kept forgetting my own keyboard shortcuts too!
- Position Mode! Press P to lock a starting spot, move the cursor down and right to where you want to set a square copy-block (remember your locked starting position), then use SHIFT+Arrow Keys to start moving that block (the cursor shifts with you). Makes it super easy to relocate portions of a scene. It is a destructive relocation, so it will overwrite anything you relocate over. Intended for repositioning small parts of the scene. ENTER or ESC to exit the Position Mode.
- Write Mode! Press W to write out a sequence of plain text into the scene. It will prompt what text you want to write. But a special thing here is, it will also maintain whatever color attributes you currently have in the scene.
(TheDraw had "fonts" - so yea, I might do that next; at least semi-big-font)
- Added keyboard commands to insert/delete a row/col. Helps move the scene around if your content has ended up too close to one of the edges.
CTRL+K / CTRL+I DELETE ROW / INSERT ROW
CTRL+U / CTRL+Y DELETE COLUMN / INSERT COLUMN
- F4 now to revert back to the default/standard font symbol sequence. So you can swap to your custom one (F3) and the system-default one (F4) without restarting.
- F9/F10 key short-cuts to the QuickSave Save/Load (was previously just on the gamepad, oops)
- Fixed the "A" bug (it will report "NOPE" until it has figured out a color to be applied; a color to apply isn't decided until you STAMP {SPACE} or press "C" to get a color)
- Fixed a bug where text input could go 1 past the edge of the screen
- Added the X16.BIN sample, which I used this scene editor to create
Update is in the first post.
Re: Text Mode Scene Editor (with mouse and gamepad support!)
Couple fixes for 1.3A update:
- fixed to make compatible with the TryItNow (botched sub-folder in the zip)
- on exit with ESC, it will now prompt Y/N (since program is actually useful now, wanted to avoid losing work due to accidentally pressing ESCape); "Y" will exit, any other key is interpreted like "N"
TODO ideas:
- "B" key, thinking of having this let you "swap background color" pick a "from color" then a "to color" - so can do the full background, or smaller surgical changes.
- might change HOME/END to go to the first non-blank left/right, to quickly get to edge of content. Or if the entire row is blank, do the existing behavior of going to the left side/right side.
- maybe an alternative Position Mode that is non-destructive (maybe doing CTRL+arrow keys instead of SHIFT+arrow keys). Would make it easier to just grab a large block and slide a blank corner of it over to something else.
- mouse RMB during Position Mode to re-locate the cursor more quickly.
- incorporate semi-big font (or some kind PETSCII alphaumerical font system)
- I'll speed up the ROW insert/delete. Was experimenting with doing it from more "pure BASIC" approach, but it is crazy slow. I'll fix it by doing a partial screen save and then BVLOAD it back in one row off.
NOTE also there is an X16FontEditor:
https://voidstar.blog/commander-x16-font-editor/
Mixing these two could get some creative results. Probably should do a color palette editor text.
- fixed to make compatible with the TryItNow (botched sub-folder in the zip)
- on exit with ESC, it will now prompt Y/N (since program is actually useful now, wanted to avoid losing work due to accidentally pressing ESCape); "Y" will exit, any other key is interpreted like "N"
TODO ideas:
- "B" key, thinking of having this let you "swap background color" pick a "from color" then a "to color" - so can do the full background, or smaller surgical changes.
- might change HOME/END to go to the first non-blank left/right, to quickly get to edge of content. Or if the entire row is blank, do the existing behavior of going to the left side/right side.
- maybe an alternative Position Mode that is non-destructive (maybe doing CTRL+arrow keys instead of SHIFT+arrow keys). Would make it easier to just grab a large block and slide a blank corner of it over to something else.
- mouse RMB during Position Mode to re-locate the cursor more quickly.
- incorporate semi-big font (or some kind PETSCII alphaumerical font system)
- I'll speed up the ROW insert/delete. Was experimenting with doing it from more "pure BASIC" approach, but it is crazy slow. I'll fix it by doing a partial screen save and then BVLOAD it back in one row off.
NOTE also there is an X16FontEditor:
https://voidstar.blog/commander-x16-font-editor/
Mixing these two could get some creative results. Probably should do a color palette editor text.
Re: Text Mode Scene Editor (with mouse and gamepad support!)
Version 1.4 updates:
- HOME/END (and PGUP/PGDN) now look for the "edge of content" (in the current row or col) and will move the cursor there. If the cursor is already there, it will go to the edge like normal. Helps to more quickly move around on a scene by keyboard.
- INSERT /DELETE ROW is now fast (involves the SD-card, it just does a partial save with MCIOUT then a BVLOAD back).
(in contrast, insert/delete column was always fast since I used a little trick there that doesn't involve the SD-card)
- "B" for background color replacement (select a FROM color and a TO color, and all instances of the FROM background color get replaced with the TO color). It's kind of slow, but reasonable in the emulator 300% mode.
- F7 to do a "BLENDED LOAD". This loads an existing file, but won't overwrite any existing content in the scene. So if you are working multiple glyphs, but then want to combine them into a single scene, then: reposition the glyph in the other files (to unused areas of the main scene), save it, and then import ("blend") it into the master scene.
Hint: So if you want a different color of a glyph (in the same scene) - position it to an used area, save to new file. Use BACKGROUND color replacement in the other file, then BLEND/MERGE it back into the original. Just gotta think in terms of "reverse layers".
- Can RMB now in Position Mode, to reposition the cursor more quickly (useful for larger blocks)
- F1 help caches to its own quicksaveH, so won't overwrite the regular quicksave anymore.
TODO ideas:
- I'm tempted now to sort support layers, like ALT+1 or something to swap between working files. i.e. ALT+1 would BVLOAD in whatever filename you had in the file1 slot, etc. This could be a step towards supporting animated scenes.
- I tried working on a "non-destructive" block move(reposition), but that'll take some more thinking and work than I had time for yet (the non-destructed portion then results in a non-rectangular block, so probably have to store a copy of the block off scene).
- "blending" is still pretty slow. Won't be an easy way around that from BASIC.
- I realized now this isn't very "ISO-mode" friendly. It does work, but apparently ISO mode changes key cods for GET? Or changes how key-modifiers work. In any case, many keys end up not working in ISO-mode. I'll look into more later, but it is a known issue. But since you can apply a whatever-font over into $F000, that's a workaround for now.
- Also, the code is written to adapt to smaller text modes. But I'm aware the bottom-row menu and help aren't very "non-80-column" friendly right now. I didn't consider it a huge issue, since if you're targeting a 40-col or 64-col, then you'd just work on those portions of the scenes (a "ruler" would be nice, TheDraw had that). But probably would be nice to more natively edit while in those modes. Be aware that the SAVE'd BINs only save up to whatever the current screen height is (probably should note that in the README) minus the status row.
EDIT: below is an example of the blended mode (and background color selection menu). F6 to fast load TREE.BIN, then F7 to "blend load" in the X16.BIN (then change its BG color from blue to red)
- HOME/END (and PGUP/PGDN) now look for the "edge of content" (in the current row or col) and will move the cursor there. If the cursor is already there, it will go to the edge like normal. Helps to more quickly move around on a scene by keyboard.
- INSERT /DELETE ROW is now fast (involves the SD-card, it just does a partial save with MCIOUT then a BVLOAD back).
(in contrast, insert/delete column was always fast since I used a little trick there that doesn't involve the SD-card)
- "B" for background color replacement (select a FROM color and a TO color, and all instances of the FROM background color get replaced with the TO color). It's kind of slow, but reasonable in the emulator 300% mode.
- F7 to do a "BLENDED LOAD". This loads an existing file, but won't overwrite any existing content in the scene. So if you are working multiple glyphs, but then want to combine them into a single scene, then: reposition the glyph in the other files (to unused areas of the main scene), save it, and then import ("blend") it into the master scene.
Hint: So if you want a different color of a glyph (in the same scene) - position it to an used area, save to new file. Use BACKGROUND color replacement in the other file, then BLEND/MERGE it back into the original. Just gotta think in terms of "reverse layers".
- Can RMB now in Position Mode, to reposition the cursor more quickly (useful for larger blocks)
- F1 help caches to its own quicksaveH, so won't overwrite the regular quicksave anymore.
TODO ideas:
- I'm tempted now to sort support layers, like ALT+1 or something to swap between working files. i.e. ALT+1 would BVLOAD in whatever filename you had in the file1 slot, etc. This could be a step towards supporting animated scenes.
- I tried working on a "non-destructive" block move(reposition), but that'll take some more thinking and work than I had time for yet (the non-destructed portion then results in a non-rectangular block, so probably have to store a copy of the block off scene).
- "blending" is still pretty slow. Won't be an easy way around that from BASIC.
- I realized now this isn't very "ISO-mode" friendly. It does work, but apparently ISO mode changes key cods for GET? Or changes how key-modifiers work. In any case, many keys end up not working in ISO-mode. I'll look into more later, but it is a known issue. But since you can apply a whatever-font over into $F000, that's a workaround for now.
- Also, the code is written to adapt to smaller text modes. But I'm aware the bottom-row menu and help aren't very "non-80-column" friendly right now. I didn't consider it a huge issue, since if you're targeting a 40-col or 64-col, then you'd just work on those portions of the scenes (a "ruler" would be nice, TheDraw had that). But probably would be nice to more natively edit while in those modes. Be aware that the SAVE'd BINs only save up to whatever the current screen height is (probably should note that in the README) minus the status row.
EDIT: below is an example of the blended mode (and background color selection menu). F6 to fast load TREE.BIN, then F7 to "blend load" in the X16.BIN (then change its BG color from blue to red)
- Attachments
-
- editor4_blend.jpg (185.41 KiB) Viewed 362 times