1
0
mirror of https://github.com/sethm/symon.git synced 2025-01-20 22:32:53 +00:00
Seth Morabito 2ebdd254b3 Work In Progress: CPU behavior, UI changes
This is something of a "Work in Progress" checkpoint of several features
that are all half baked:

1. Allow loading of 16KB ROM files at address $C000 at run-time, not
   just at startup. See the "Load ROM..." File menu item.

2. Introduces the notion of "CPU Behaviors", so the core 6502 CPU
   implementation can match the behavior of either an early NMOS 6502, late
   NMOS 6502, or CMOS 65C02. Very little of this is actually implemented so
   far.

3. Adds a completely bogus implementation of the 6522 VIA (it
   does absolutely nothing right now).

4. Changes the address of the ACIA in the simulated system to match a
   real hardware implementation I put together.
2012-11-25 22:49:21 -08:00
..

Sample Programs
----------------

1. hello.prg

  When loaded at address $0300, this program will print "Hello, 6502 World!" in
  infinite loop.

2. echo.prg

  When loaded at address $0300, this program will echo back to the console
  anything typed.


Both hello.prg and echo.prg were assembled with the Ophis assembler:

   https://hkn.eecs.berkeley.edu/~mcmartin/ophis/


3. ehbasic.rom

   This is Lee Davison's Enhanced 6502 BASIC.

   To use this ROM image, just copy the file 'ehbasic.rom' into the directory
   where you run Symon. Rename the file to 'rom.bin'.  When you start Symon,
   the ROM file will be automatically loaded at address $d000.

   Click the "Run" button and EhBASIC should automatically start running.

   Type 'C' to do a cold start.

   Then, type $C000 when prompted for the memory size.

   NOTE: EhBASIC only wants upper-case input. This confused me at first!

   More information can be found in the 'ehbasic' directory, and by visiting
   the EhBASIC web page:

   http://mycorner.no-ip.org/6502/ehbasic/index.html