A feature-rich text editor for the Commodore 64.
- BASIC Mode with keyword syntax highlighting and automatic line renumbering
- Smart Paging: 256-line capacity with automatic 64-line pages
- Directory Browser: Multi-drive support (8-15) with file type display
- Search & Replace: Find text with wrap-around and replace all
- Copy/Paste: Visual mark mode for selecting and copying text
- Undo/Redo: One-level undo and redo for text editing operations
- Goto Line: Jump directly to any line number in your file
- Mouse Support: Experimental support for Commodore 1351 mouse (click to position cursor)
- Status Bar: Shows filename, cursor position, drive, page, and mode indicators
- 37×23 editing area with line numbers
Install the LLVM-MOS SDK
mkdir build
cd build
cmake ..
cmake --build .The compiled program will be at build/whisper64.prg
Load on your C64 or emulator:
LOAD "WHISPER64.PRG",8,1
RUN
| Key | Function |
|---|---|
| F1 | Load file (opens directory browser) |
| F2 | Save file (with overwrite protection) |
| F3 | Select drive (8-15) |
| F4 | Toggle BASIC mode / Renumber BASIC lines |
| F5 | Find text |
| F6 | Find & replace (with replace all option) |
| F7 | Find next occurrence |
| F8 | Help screen |
| CTRL+C | Copy marked text (up to 8 lines) |
| CTRL+G | Jump directly to any line number |
| CTRL+J | Toggle mouse on/off (experimental) |
| CTRL+K | Toggle mark mode for selection |
| CTRL+V | Paste copied text |
| CTRL+Y | Redo the last undone change |
| CTRL+Z | Undo the last change |
| HOME | Go to top of file |
| Arrows | Move cursor (updates mark selection when active) |
- F1 → Load file (directory browser)
- F2 → Save file
- CTRL+C → Copy marked text
- CTRL+V → Paste text
- CTRL+Z → Undo
- CTRL+Y → Redo
- CTRL+K → Toggle mark mode
- CTRL+G → Goto line
- F5 → Find text
- F6 → Find & replace
- F7 → Find next
- HOME → Jump to top of file
- Arrow Keys → Move cursor
- CTRL+J → Toggle mouse support (experimental)
- F3 → Select drive (8-15)
- F4 → BASIC mode / Renumber
- F8 → Help screen
Whisper64 includes experimental support for the Commodore 1351 mouse on Control Port 1 (left port).
To use the mouse:
- Connect your 1351 mouse to Control Port 1
- Press CTRL+J to enable mouse mode
- Move the mouse to position the cursor (shown as yellow
^) - Click the left button to position the text cursor
- Press CTRL+J again to disable mouse mode
Notes:
- Mouse cursor is only shown when mouse mode is active
- Clicking in the edit area (lines 1-23) positions the text cursor
- Mouse sensitivity can be adjusted in
mouse.c(MOUSE_DIVISORconstant)
Press F4 to enable BASIC mode, which provides:
- Purple keyword highlighting for BASIC commands
- Press F4 again to renumber all lines (10, 20, 30...)
- Automatic update of GOTO, GOSUB, THEN, and ELSE references
- Line number display in cyan
Press F1 to open the directory browser:
- Shows disk name at top
- Displays file type (PRG, SEQ, DEL, USR, REL)
- Shows locked files with asterisk (*)
- Displays block size for each file
- Use ↑/↓ arrows to navigate
- Press RETURN to load selected file
- Press RUN/STOP to cancel
The top status bar displays:
- Filename: Currently loaded/saved file (8 chars)
- Line:Column: Current cursor position
- [BAS]: BASIC mode indicator (purple)
- [M]: Mark mode active indicator (green)
- D:n: Current drive number (cyan)
- Pn/n: Current page / total pages (cyan, if multi-page)
To copy and paste text:
- Press CTRL+K to enter mark mode
- Use arrow keys to select text (selection shown in yellow)
- Press CTRL+C to copy the selected text
- Move cursor to destination
- Press CTRL+V to paste
- Press CTRL+K again to exit mark mode
You can copy up to 8 lines at once. The copied text remains in the clipboard until you copy something new.
Simple Search:
- Press F5 to open search
- Type the search term and press RETURN
- Use F7 to find next occurrence
- Search wraps around to beginning when reaching end
Find & Replace:
- First search with F5
- Press F6 to open replace dialog
- Type replacement text
- Choose:
- Y to replace all occurrences at once
- N to manually replace each occurrence
- Press CTRL+G
- Type the line number (1-64)
- Press RETURN
Free to use and modify.