EBM S/800 - QUICK START GUIDE
This Quick Start Guide is being developed into a full User Manual. It may not yet cover all features.
The guide covers the following subjects, click an item in the list or scroll. Or Click itch.io to download.
- Video Settings
- Terminal Mode
- Editor Mode
- Terminal Mode: File Management
- Editor Mode: File Management
- Workspace Management
- Editor Mode: Section Jump
- Editor Mode: Find/Replace
- Scratch Clipboard and Mnemonic Clipboards
- Editor Mode: Multi-Line Tab and Extended Tab Mode
- Editor Mode: Bracket Match Modes
- Editor Mode: Line Number Margin Mode
- Editor Mode: Suggest Module
- Editor Mode: Suggest Module - Advanced
- Editor Mode: Quick Launch
- Pico-8
VIDEO SETTINGS
Note that the EBM S/800's HELP feature does not detail video settings. This is because these settings exist outside of the EBM S/800. You would not expect a modern computer to tell you how to adjust your flatscreen monitor! All of the EBM S/800's video settings are detailed on this page.
ALT+ENTER - Toggle Windowed Mode and Full Screen Mode.
CTRL+SHIFT+ALT+PGUP/PGDN - Enter Half Screen Width Mode, and dock to the left or right for a low-distraction working environment.
CTRL+SHIFT+ALT+UP/DOWN/LEFT/RIGHT - Increase/decrease pixel width/height.
CTRL+SHIFT+ALT+0 - This is the zero key on the main part of your keyboard. Cycle through 3 Monochrome Colour Modes - amber, green or white on black. The Executive Edition also cycles through 3 Inverse Colour Modes, e.g. black on amber.
CTRL+SHIFT+ALT+MINUS/EQUALS - These are the minus key and the plus/equals key on the main part of your keyboard. Increase or decrease the intensity of the Visible Scanline Mode. The scanline value ranges from 0 (off) to 10 - disable the effect by turning down to the lowest setting. Executive Edition goes up to 11.
Related to video settings: type F2+ALT in Editor Mode to toggle Caps Display Mode. In this mode, all characters are displayed in caps. Temporarily disabled in Find Mode.
QUICK START GUIDE: TERMINAL MODE
For clipboard see section Scratch Clipboard and Mnemonic Clipboards.
ESC+BACKSPACE/DELETE - Restore.
UP ARROW - Repeat command.
AUTOSAVE - Set or disable autosave, can state seconds.
MODULE - List installed Modules.
CLEAR - Clear Terminal screen.
RESET - Reset S/800.
EXIT - Exit the S/800.
QUICK START GUIDE: EDITOR MODE
For clipboard see section Scratch Clipboard and Mnemonic Clipboards.
F2 - Toggle line numbers.
F2+CTRL - Cycle through all Status Bar modes.
F5/CTRL+F5 - Find again/previous.
INS - Toggle Insert Mode.
SHIFT+UP/DOWN/LEFT/RIGHT/HOME/END - Select text.
CTRL+A - Select All.
CTRL+Z/Y - Undo/Redo.
CTRL+UP/DOWN - Jump to start of previous/next line.
CTRL+SHIFT+UP/DOWN - Jump to previous/next section, as defined in language pack.
CTRL+1/2/3/4 - Change case of selection: Lower, Upper, Sentence, Title.
Designed to be easy to remember: 1 is the lowest number, hence Lowercase. Upper/lower work together, hence 2 is Uppercase. 3 is above the S key on most keyboards, and S is for Sentence. 4 is close to T, and T is for Title.
CTRL+D - Duplicate current line or all selected lines.
CTRL+SHIFT+D - Delete line or lines.
CTRL+L - Select current line. Repeat to extend selection.
CTRL+SHIFT+L - Extend selection upwards.
CTRL+J/CTRL+SHIFT+J - Jump to next or previous matching word or character, depending on cursor position or selection.
CTRL+G - Go to line number.
CTRL+I - Invert Selection. IMPORTANT. The S/800 uses a non-standard font.
This feature may be useful for temporarily highlighting words and phrases in note documents
that you intend to open only in the S/800.
Note that characters 0-127 are the standard characters, 128-255 are visually inverted versions of the same.
Invert Selection simply adds 128 to the ASCII value of all unrestricted characters.
CTRL+SHIFT+I - Remove inversion from selection.
Note that within the range 0-127, characters 0-28 are invalid due to ASCII restrictions.
This is unlikely to be noticeable in normal usage.
CTRL+BACKSLASH/CTRL+SHIFT+BACKSLASH - Some keyboards, such as standard UK keyboards,
have a slash key between left Shift and Z.
These key combinations force cursor down/up, enabling you to move vertically through the document
with your left hand while your right hand remains on the mouse.
Editor Mode rows: to set number of Editor Mode rows up to 99, type EDIT INI in Terminal Mode, then edit S800.ini file in Editor Mode: - under [EDIT] header, enter e.g.: ROWS=99
TERMINAL MODE: FILE MANAGEMENT
Let's assume you have several source code files or text files in folder C:\project\game\maze
Type F1 to ensure you are in Terminal Mode.
Type FOLDER to view the current working directory, or DIR to view the current folder's files and folders. Folders are in [square brackets]. CTRL slows the directory listing, ESC halts the listing.
If you are in C:\project, type IN "game" to move to C:\project\game. You can enter multiple folders, e.g. IN "game\maze".
To jump to any folder from anywhere, type the full path, e.g. IN "C:\project\game\maze"
To exit a folder, type OUT. You can also type BACK to return to the previous folder.
You can load files individually by entering the folder and typing LOAD "myFile". Type LOAD ALL to load all files in the current folder, or navigate to the folder containing the folder and type LOAD "myFolder"
Type LOAD INI to load the EBM S/800's settings file from any folder.
EDITOR MODE: FILE MANAGEMENT
The EBM S/800's Editor Mode does provide some degree of file management.
Type F2 to ensure you are in Editor Mode. Note the Status Bar along the bottom of the editing screen.
CTRL+N - Create a new text document with extension .txt, use Save As if you require an alternate extension such as .c
CTRL+S - Save the currently viewed document.
CTRL+SHIFT+S - Save As, type the new filename in the Status Bar.
CTRL+SHIFT+A - Save All, saves all open documents. Untitled documents will not be saved.
CTRL+R - Reload, the open copy of the document will be replaced by the file stored on the disk.
CTRL+W - Close, closes the document.
ALT+PGUP/PGDN/HOME/END - Cycle between open documents.
ALT+CTRL+PGUP/PGDN/HOME/END - Reorder open documents, e.g. move document to end.
WORKSPACE MANAGEMENT
A workspace is just a list of document filenames in a text file with extension .8ws
Type F1 to ensure you are in Terminal Mode.
LOAD WS "WorkspaceName.8ws" - Load all documents in a previously saved workspace. You may have to navigate to the folder containing the .8ws file.
SAVE WS "WorkspaceName.8ws" - Save all open documents as a workspace.
You can also save the workspace in Editor Mode.
CTRL+K - Save workspace. At least one document must be open. You may be prompted to enter a name for the .8ws file.
CTRL+SHIFT+K - Save workspace with new name.
Saving the workspace does not save the actual document files. To close a workspace, just close all open files.
EDITOR MODE: SECTION JUMP
In Editor Mode, type CTRL+SHIFT+UP/DOWN to jump to the previous/next document section, based on definitions in your .8pk language pack definition documents.
Sections might be functions, subroutines, labels, or even chapters in a story, for example.
Several pre-defined sections are available. In a language which uses C-style functions, you can simply include the following line in the language pack:
[SECTION_TYPE:FUNCTION-C]
At present, the following pre-defined sections exist, though more can be made available on request:
FUNCTION-C
CLASS-CSHARP
METHOD-CSHARP
INTERFACE-CSHARP
ENUM-CSHARP
METHOD-JAVA
CLASS-JAVA
INTERFACE-JAVA
ENUM-JAVA
You can define your own section types, using an asterisk to mean any combination of characters, and one of two tag types: [SECTION_USERDEF_CLMN#] where # is the column number, and [SECTION_USERDEF_CLMN_ANY] where the header may start in any column. Consider the following examples.
[SECTION_USERDEF_CLMN0:<*:>] - must start in the first column and consist of text (e.g. label name) followed by a colon, followed by nothing. Example:
myLabel:
[SECTION_USERDEF_CLMN1:<*:*>] - must start in the second column and consist of text (e.g. label name) followed by a colon, which can then be followed by more text. Example:
myLabel: blah
[SECTION_USERDEF_CLMN_ANY:<FUNCTION *(*>] - can start
in any column and consist of the word FUNCTION followed by any further text,
followed by an opening round bracket, followed by any further text. Note that in this example,
the algorithm looks for the first line only; the other lines are assumed:
FUNCTION myFunction(int myParam
int maybeAnotherParamHere
int andAnotherHere)
EDITOR MODE: FIND/REPLACE
The EBM S/800's Editor Mode may seem confusing at first, but it has been designed to be both powerful and efficient. The keystrokes will soon become second nature.
Let's start with a quick overview.
You'll be typing your Find/Replace text in the Status Bar, then using PGUP/PGDN/HOME/END to jump between matches. When entering this sub-mode, optionally hold one or both of two Control Keys to affect the search: SHIFT forces case sensitive mode (this makes sense, because you're used to using SHIFT to control case when you type) ... CTRL forces Whole Word Match. Certain key combinations then execute replacement.
Here follows the full list of keystrokes:
CTRL+F - Enter Find/Replace Mode. A cursor will appear in the Status Bar. If text has been selected in the document, S will be shown in the Status Bar to indicate that the EBM S/800 will search only the selected text. Otherwise, A will be shown in the Status Bar, indicating that all of the document will be searched.
TAB - Toggle Find Text Mode and Replace Text Mode. The letter F or R will be shown in the Status Bar. Enter text to find in Find Text Mode, optionally enter replace text in Replace Text Mode.
PGUP/PGDN/HOME/END - Search the document, e.g. PGDN will jump to the first match after the cursor. The Status Bar will show the match index and counter, for example 3/5 will indicate the third of five matches.
When typing PGUP/PGDN/HOME/END to search, hold SHIFT to activate case sensitive Exact Match Mode, C will be shown in the Status Bar, hold CTRL to activate Whole Word Match mode, # will appear in the Status Bar.
CTRL+R - Replace, replaces the current match with the Replace text.
CTRL+A - Replace All, replaces all matches in the document with the Replace text.
CTRL+SHIFT+A - Replace All In Language, replaces all matches in all documents of the same language type.
CTRL+SHIFT+ALT+A - Replace All Across All, replaces matches in all documents of all language types.
EDITOR MODE: SCRATCH CLIPBOARD AND MNEMONIC CLIPBOARDS
The EBM S/800's Scratch Clipboard will be familiar to Windows users. The Scratch Clipboard works in modes including Terminal, Editor and Find/Replace.
CTRL+C - Copy to Scratch Clipboard. In Terminal Mode copies current line.
CTRL+SHIFT+C - In Terminal Mode copies entire screen.
CTRL+V - Paste contents of Scratch Clipboard.
Both EBM S/800 editions include multiple Mnemonic Clipboards. These clipboards are tied to letters of the alphabet, and triggered by the respective keys. You might store the phrase "Extra life" in the X key, for example.
The free edition features 8 Mnemonic Clipboards, tied to keys A-H. The Executive Edition features A-Z.
CTRL+ALT with letter - Copy selected text to chosen Mnemonic Clipboard.
CTRL+SHIFT+ALT with letter - Cut to chosen Mnemonic Clipboard. Text will be stored to the clipboard and deleted from the document.
ALT with letter - Mnemonic clipboard paste.
EDITOR MODE: MULTI-LINE TAB AND EXTENDED TAB MODE
In Editor Mode, type TAB to increase tab indent, CTRL+TAB to decrease tab indent. To change the indent on multiple lines, first select multiple lines by holding SHIFT and navigating with the arrow keys.
In Terminal Mode, the TAB command sets the default tab size. For example, TAB 5 sets the default tab size to five spaces.
Executive Edition includes Extended Tab Mode for more precise control, allowing you to set tabs individually.
In Editor Mode, type CTRL+SHIFT+TAB to enter Extended Tab Mode.
The Status Bar will show a tab editing rule.
LEFT/RIGHT - Navigate left and right along rule.
SPACE - Set or unset a tab position. Tab positions cannot be consecutive.
ENTER - Save Extended Tab Mode settings.
ESC - Cancel without saving.
Extended Tab Mode settings apply only to the active language.
Default tab settings are overridden by Extended Tab Mode settings.
To remove Extended Tab Mode settings, enter Extended Tab Edit Mode and remove all tabs, or edit the file S800.ini
EDITOR MODE: BRACKET MATCH MODES
Editor Mode includes two Bracket Match Modes.
Visual Bracket Match Mode highlights bracket pairs as you edit. Move the cursor onto a bracket and the matching bracket will be highlighted. This feature applies only when the active language has Bracket Match Mode enabled for the bracket type. Check the .8pk files in your pack folder. Type CTRL+M to enable/disable this mode for the current language.
Bracket Match Locate Mode enables you to manually locate the off-screen bracket that matches a known bracket. To enter Bracket Match Locate Mode, move the cursor onto a known bracket and type CTRL+SHIFT+M. Type ESC to exit.
The S/800 will locate the matching bracket. The Status Bar will show the coordinates of both brackets, together with your cursor's coordinates relative to each bracket, updating the values as you move.
The first two values show the opening bracket's actual and relative position. The second two values show the closing bracket's actual and relative position. The Status Bar also shows the cursor's current position.
For example, if the known bracket is the opening bracket, and the closing bracket's second pair of digits shows -5, -8, move the cursor down 8 and right 5 to locate the bracket.
EDITOR MODE: LINE NUMBER MARGIN MODE
Type F2 in Editor Mode to toggle Line Number Margin Mode.
The minimum number of columns can be configured per language type in the EBM S/800's .ini file under [EDIT-LINENUMBER], for example <c>=<00000> defaults to five columns for .c files, <txt>=<000> defaults to three columns for .txt files. The margin expands automatically for documents that exceed the minimum.
Note that the stated language is a language defined in a language pack, not the file extensions relevant to a particular language, for example <c>=<00000> will be ignored if a language pack for the C language is not included in the pack folder.
EDITOR MODE: SUGGEST MODULE
Suggest Mode suggests words as you type. When you type two or more letters, the EBM S/800 suggests matching words in the Status Bar. An UP ARROW indicates that the displayed text is a suggestion.
ALT+LEFT/RIGHT - Cycle through suggestions.
ALT+UP - Accept suggestion.
Suggest is one of several optional Modules, some of which are installed by default and some of which must be installed. Suggest Mode is available only in Editor Mode.
For general usage, you can stop reading here. Just work as you will, and when the S/800 suggests a word, consider accepting the word.
EDITOR MODE: SUGGEST MODULE - ADVANCED
Suggested words are tied to languages. But what is a language? Consider the following concepts:
- Languages are implied by file extension, though they can be explicitly defined
- Defining a language groups file types together, e.g. to group .cpp and .h files as a language, define C++ as a language
- Documents grouped by language - i.e. the file types are listed together in a language definition - share a dictionary
- Languages are not always programming languages - a novelist might define a Fiction language with the file extension .txtf, adding character names as dictionary words
- Consider adding an invented file extension to your programming language definition for notes documents relevant to your project, e.g. add .luanotes to a Lua language definition - docs with this extension will share your Lua dictionary
So what is a dictionary? There are two types.
- Each language, whether defined or implied, has a Dynamic Dictionary, i.e. it exists inside the S/800's memory only when such files are open
- A defined language can have a list of Explicit words - listed in the file that defines the language
Let's assume that your language pack folder contains a Language Pack definition file for the C language only. And let's assume that you have six documents open: four C language documents (two .h and two .c, which are linked by the C language definition file), and two BASIC documents, both with the extension .bas
Type a word in one of the .h or .c documents, and the word is added to the C language's Dynamic Dictionary. Type a word in a BASIC document and the word is added to the BASIC language's Dynamic Dictionary - even though no language pack for BASIC documents exist.
To define a language, simply create a new .8pk file. Open folder pack and study files with extension .8pk Reboot the S/800.
EDITOR MODE: QUICK LAUNCH
Assemble, compile or launch your project at the press of a key. You must be in Editor Mode to use this feature.
Define your launch command in the .ini file under the header [LAUNCH], for example:
9=<"C:\Program Files (x86)\PICO-8\pico8.exe" -run %FILE%>
In this example, type Quick Launch key F9 in Editor Mode and the currently active document will launch in Pico-8. Note that %FILE% is optional, and will be replaced by the path to the currently active document file.
Optionally, for any digit you can include an additional line that instructs the S800 to save the currently active document or all unsaved documents before executing the command, for example:
9-AUTOSAVE=ALL
This line can be included anywhere under the [LAUNCH] header. Options are ONE, ALL, or OFF to execute without saving.
For multi-line commands, define your text in a Windows .bat batch file and call the batch file in your .ini file Launch text.
In the Executive Edition, you can assign all ten digit keys. Quick Launch key F9 will still launch the command defined for digit 9, but you can also type ALT with the digit key to launch any of up to ten defined commands.
PICO-8
Both editions of the EBM S/800 include a Module for working with Pico-8 projects. To load the Pico-8 Module, type F1 to ensure you are in Terminal Mode, then type INSTALL PICO8
A Pico-8 project involves at least two files. A .p8 file is loaded into the Pico-8, and this file calls one or more .lua files, which you edit in the S/800.
ANY SIMPLER METHOD WILL LEAD TO LOSS OF DATA whether you use the S/800 or any other text editor.
In Pico-8, type #INCLUDE MAZE2.LUA in a new file, save as maze.p8 To find the folder, in the Pico-8's terminal type FOLDER and copy the path to the clipboard or note it on a napkin.
In the EBM S/800's Terminal Mode (F1), navigate to your Pico-8 project folder, e.g. FOLDER "C:\Pico8"
In the EBM S/800's Editor Mode (F2), in a new file (CTRL+N), type CTRL+SHIFT+S to save, replacing the suggested name with maze2.lua in lowercase.
Type print "s800" - if you installed Pico-8, the text will be shown in uppercase. Type CTRL+S to save the file.
In Pico-8, type RUN in the terminal. You do not need to reload maze.p8.
Your .p8 file can #INCLUDE several files, all of which can be edited in the EBM S/800. Note that the Pico-8 does not allow nested includes, therefore your .lua files cannot contain #INCLUDE statements.