📋 Table of Contents
🚀 Overview
Welcome to the RetroGameCoders IDE - an enhanced version of the 8bitworkshop IDE specifically designed for retro game development and 8-bit programming. This version includes significant improvements and new features while maintaining compatibility with the original platform.
🎯 What's New in This Version
This fork includes major enhancements including new platforms (VIC-20, BBC Micro, C64 BASIC), improved emulator controls, smart compilation features, and enhanced debugging capabilities. All while maintaining full credit to the original 8bitworkshop project.
✨ New Features & Improvements
🎛️ Auto-Compile Toggle
Toggle automatic compilation on/off for smoother editing experience. Perfect for active coding sessions where you want to make multiple changes without compilation delays.
📊 Visual Status Indicators
Clear "Auto-Compile: ON/OFF" captions with color coding. Green for enabled, red for disabled, making it easy to see the current state at a glance.
🔨 Manual Build Control
Build and run programs on-demand when auto-compile is disabled. The manual build button appears automatically when needed.
🎮 Enhanced Emulator Controls
Improved reset, pause, and resume functionality for C64 and BBC Micro platforms with capability detection and fallback mechanisms.
🖥️ New Platforms
Added support for Commodore VIC-20, BBC Micro Model B, and enhanced C64 BASIC with improved tokenizer and control codes.
⌨️ Smart Keyboard Shortcuts
Intuitive keyboard shortcuts for all new features. Quick access to auto-compile toggle and manual build functions.
💻 Supported Languages & Compilers
High-Level Languages
- C via
cc65,z88dk,CMOC, and platform-specific C runtimes (C64, VIC-20, Atari 8-bit, NES, MSX, Vectrex, CPC, CoCo/Dragon, x86/DOSBox, and more). - Many BASIC dialects including Commodore 64 BASIC, VIC-20 BASIC, PET BASIC, BBC BASIC, Color BASIC (CoCo/Dragon), AppleSoft BASIC, and the cross-platform ugBASIC.
- Specialized BASICs such as batari BASIC (Atari 2600), FastBasic (Atari 8-bit), and XC-BASIC 3 (C64/VIC-20/PET).
Assemblers & Low-Level Tools
- 6502/65C02 assemblers including
DASM,KickAss,ACME, andcc65's assembler. - Z80 / 6809 / ARM toolchains via
z80,m6809, andarmtool modules for arcade boards, MSX, CPC, CoCo/Dragon, and ARM32. - Verilog support for hardware-style development using the built-in Verilog toolchain.
Helper & Cross-Platform Tools
- Remote / misc tools for invoking external compilers and preprocessors when needed.
- Markdown / BASIC-only platforms for tutorials, documentation, and generic BASIC experimentation.
🖥️ Supported Platforms
Classic Home Computers
Commodore 64
Full emulation with chips-test integration, enhanced BASIC support, and improved control codes.
Commodore VIC-20
Complete emulation with chips-test integration and full development support.
Commodore PET
Original Commodore business machine with rich support for teaching BASIC and low-level programming.
Apple II / IIe
Apple ][+ and Apple //e models with comprehensive development support in C, assembly, and BASIC.
Atari 8-bit Family
Complete system emulation (e.g. Atari 800) with multiple configurations and enhanced libraries.
Amstrad CPC6128
Amstrad CPC6128 home computer with C and assembly development tools.
BBC Micro Model B / Master
Full emulation with BBC BASIC support and enhanced debugging capabilities.
Dragon 32
Dragon 32 Motorola 6809-based home computer via xroar integration.
Tandy TRS-80 Color Computer 2
CoCo 2 emulation with Color BASIC and C development support.
MSX (BIOS & libCV)
MSX home computer with both BIOS-based and libCV-based development environments.
x86 (DOSBox)
PC-style DOS environment using DOSBox for Turbo C, QBASIC, Pascal, and assembly.
Game Consoles
Atari 2600 (VCS)
Full emulation with multiple emulator backends and comprehensive development tools.
Atari 5200
Atari 5200 console with shared toolchain support alongside the Atari 8-bit family.
Atari 7800
Atari 7800 ProSystem with C and assembly development support.
Nintendo Entertainment System
Full emulation with mapper support and comprehensive development tools.
Sega Master System
Complete emulation with full development environment.
Sega Game Gear
Portable Sega Game Gear console using the same toolchain as the Master System.
ColecoVision
Complete system emulation with enhanced development capabilities.
Vectrex
Vector graphics console emulation with specialized development tools.
⚡ Auto-Compile Control
The auto-compile feature gives you complete control over when your code is compiled and executed. This is especially useful during active coding sessions.
How to Use
- Toggle Auto-Compile: Click the lightning bolt (⚡) button or press
Ctrl+Alt+C - Check Status: Look for the status indicator showing Auto-Compile: ON or Auto-Compile: OFF
- Manual Build: When auto-compile is off, use the "Build and Run" button (▶️) or press
Ctrl+Alt+M
💡 Pro Tips
- Disable during heavy editing: Turn off auto-compile when making many changes to avoid interruptions
- Enable for learning: Keep auto-compile on when experimenting to get immediate feedback
- Use manual build for testing: Perfect for final testing before deployment
⌨️ Keyboard Shortcuts
Compilation & Execution
Debug Controls
Editor Navigation & Selection
Editing & Indentation
Search & Replace
🚀 Getting Started
Quick Start Guide
- Choose a Platform: Select your target platform from the platform dropdown
- Load an Example: Browse the preset examples to get started quickly
- Edit Code: Modify the code in the editor - it will compile automatically by default
- Test Your Changes: Use the emulator to see your program run in real-time
- Debug if Needed: Use the debugging tools to step through your code
🎯 Recommended Workflow
- Start with auto-compile enabled for immediate feedback
- Disable auto-compile during heavy editing sessions
- Re-enable auto-compile for testing and debugging
- Use manual build for final testing before deployment
🔧 Troubleshooting
Common Issues
Auto-Compile Not Working
- Check that the status indicator shows "Auto-Compile: ON"
- Look for syntax errors in your code (check the console)
- Try refreshing the page if the toggle button doesn't respond
Manual Build Button Missing
- Ensure auto-compile is disabled (status should show "OFF")
- The button only appears when auto-compile is off
Emulator Controls Not Working
- Some emulators may not support pause/resume - buttons will be hidden automatically
- Reset functionality includes fallback mechanisms for unsupported emulators
- Check the browser console for detailed error messages
Platform-Specific Issues
- C64: Ensure you're using the correct character set for mixed-case text
- BBC Micro: BASIC programs are loaded via postMessage for better compatibility
- VIC-20: Check memory limitations for larger programs