1
0
mirror of https://github.com/sethm/symon.git synced 2024-11-18 23:10:05 +00:00
Commit Graph

121 Commits

Author SHA1 Message Date
Maik Merten
7a215736fe rework SD controller emulation to work with Input- and OutputStreams (no longer load the image into a byte array) 2014-08-09 17:55:18 +02:00
Maik Merten
c61a63d5bb more accurate emulation of the SD controller 2014-08-09 16:47:49 +02:00
Maik Merten
7cb4e1c945 NPE fix and reset position on every command 2014-08-09 15:13:59 +02:00
Maik Merten
3a40d35fdf use SD interface in MulticompMachine and lift the speed limit on the ACIA device to better match the experience on the real machine 2014-08-09 14:58:29 +02:00
Maik Merten
d658cd0ae5 completely untested and incomplete implementation of the SD card interface of the MULTICOMP 2014-08-09 14:57:18 +02:00
Maik Merten
004087a742 invoke setBus() on devices added to the bus 2014-07-28 18:19:52 +02:00
Seth Morabito
4bfc196b49 Clear memory on Control+Reset 2014-07-27 13:41:44 -07:00
Seth Morabito
b1e1e75555 Reset WIP 2014-07-27 11:33:08 -07:00
Maik Merten
f90516e53c fix a possible NPE 2014-07-26 18:55:51 +02:00
Maik Merten
fdaeb661d3 add menu entry to allow to switch the emulated machine type 2014-07-26 18:52:57 +02:00
Maik Merten
827e9991d5 move main method into Main class in anticipation of changes that allow restarting the complete UI from within the Simulator menu system 2014-07-26 18:07:29 +02:00
Maik Merten
dc7dfc4b4d code simplification 2014-07-25 21:44:43 +02:00
Maik Merten
2217f3831d slight JavaDoc fix regarding what Exception can be thrown 2014-07-25 21:27:40 +02:00
Maik Merten
52f4e9a00f enforce that the address range of devices falls within the address range of the bus. Turned out that the CPU tests instantiate memory with the last parameter as memory size, not end address (fixed now). Also make sure that the address lookup array takes the offset caused by non-zero starting addresses into account. 2014-07-25 21:24:16 +02:00
Maik Merten
d7f8045b61 rework bus. Don't throw an Exception any more with overlapping device addresses - this is normal for some machines. Introduce the concept of priorities to ensure that device overlap in the correct order. 2014-07-25 19:32:00 +02:00
Maik Merten
222772648d simple dialog for choosing machine model when no command-line option was given 2014-07-22 17:50:06 +02:00
Maik Merten
bd2337ae65 allow for selecting the emulated machien type with the "-machine" parameter. The default is the Symon machine model, the Multicomp machine can be selected with "-machine multicomp". 2014-07-21 17:39:20 +02:00
Maik Merten
a49c0d40d8 revert back to busy waiting for CPU speed emulation to have a less bursty CPU behavior 2014-07-20 21:55:01 +02:00
Maik Merten
44bfbc17ab replace busy waiting to emulate "proper" CPU speed with some time book keeping and thread sleeping 2014-07-19 20:19:26 +02:00
Maik Merten
b266a02372 have full 56K of RAM for the Multicomp machine 2014-07-19 17:51:51 +02:00
Maik Merten
72074b9715 Silence a compiler warning regarding generics 2014-07-19 17:40:19 +02:00
Maik Merten
252ebe0569 implement overrun status flag for the 6551 ACIA 2014-07-19 17:30:23 +02:00
Maik Merten
4a37dd7463 move overrun detection and reset into the abstract superclass for ACIAs 2014-07-19 17:10:57 +02:00
Maik Merten
cf36f731da make use of the MulticompMachine in the simulator. This should be an option, not hardcoded. 2014-07-17 21:59:03 +02:00
Maik Merten
e01f68a19a make use of overlapping memory regions in MulticompMachine 2014-07-17 21:45:37 +02:00
Maik Merten
44151f3a9c have the Bus support devices with overlapping memory regions 2014-07-17 21:43:46 +02:00
Maik Merten
f5a25b7303 initial definition of the MULTICOMP machine. Will not yet run, as the bus will currently not allow overlapping memory ranges for devices. 2014-07-17 20:41:26 +02:00
Maik Merten
14e8ea596c define an interface for supported machines and have the SymonMachine as first implementation. Remove machine-specific definitions out of the Simulator class. 2014-07-17 19:42:51 +02:00
Maik Merten
8f52e1da1e implement overrun flag for 6850 ACIA 2014-07-16 22:26:06 +02:00
Maik Merten
0d0fddc365 tests for the 6850 ACIA and fixes in ACIA behavior 2014-07-16 21:51:34 +02:00
Maik Merten
31fdd87b41 turn Acia into an abstract class so that the 6551 and 6850 ACIAs can reuse code and an unified interface. 2014-07-15 21:35:19 +02:00
Maik Merten
9726907317 initial (and untested) implementation of a Motorola 6850 ACIA 2014-07-15 18:45:13 +02:00
Seth Morabito
40c5397ed8 Faster refresh of memory window 2014-07-06 12:17:39 -07:00
Seth Morabito
1bc8eda38d ACIA interrupt handling 2014-01-26 01:25:12 -08:00
Seth Morabito
76dcbd712a IRQ and NMI handling at CPU level. 2014-01-25 20:45:39 -08:00
Seth Morabito
b6cc480919 Add NMI flag to CPU 2014-01-25 20:02:17 -08:00
Seth Morabito
0c5035fc56 Add interrupt flag to CPU 2014-01-25 19:53:53 -08:00
Seth Morabito
4a510b635e README updates, CRTC tests.
- Added more CRTC information to the README file.
- Added unit tests for the CRTC.
- Implemented register read for cursor position in the CRTC.
- Bundling a new version of jterminal that has correct backspace
  behavior.
2013-12-29 18:18:48 -08:00
Seth Morabito
070e9db813 Merge branch 'master' into crtc
Conflicts:
	src/main/java/com/loomcom/symon/Simulator.java
	src/main/java/com/loomcom/symon/devices/Device.java
	src/main/java/com/loomcom/symon/devices/Memory.java
2013-12-28 23:35:22 -08:00
Seth Morabito
3c68c63995 Additional refactoring 2013-12-28 23:14:21 -08:00
Seth Morabito
6dde766f5a Refactor of CRTC 2013-12-28 19:55:26 -08:00
Seth Morabito
e7e3c77e3f First pass at Video window 2013-12-27 21:40:28 -08:00
Max840
bc6b93e3fe Optimization of Bus.isComplete() 2013-12-26 17:25:52 -05:00
Max840
d8deca227f Create Device.size() 2013-12-24 15:35:56 -05:00
Max840
d1a05aeb2b Devices use start/end address 2013-12-23 23:31:51 -05:00
Seth Morabito
a5af522c5c Force no grid on memory window 2013-03-30 22:27:33 -07:00
Seth Morabito
6a50476bfe Step Count and Memory Window enhancements
Introduces several changes requested by Mario Keller. The simulator now has a variable step count that can be selected by a drop-down box on the main window. This change also displays ASCII characters in the Memory window.
2013-03-30 21:28:52 -07:00
Jay Sissom
429fec97b2 Fix disassembled opcode display on trace log for zero page,X and zero page,Y addressing modes. 2013-03-04 22:10:25 -05:00
Seth Morabito
4ccb7bec97 Tooltip Text and Minor Enhancements
- Added tooltip text to status panel.
- Memory is no longer cleared on reset.
- Console can now receive key-strokes even while the simulator is
  stopped (for single-stepping programs that require interaction)
- Updated screenshots with bug-fixed version.
2013-01-12 11:41:32 -08:00
Seth Morabito
34fb8940ae Fix swapped labels on status pane
The labels for the X and Y registers were swapped on the status pane.
How embarrassing!
2013-01-05 14:26:16 -08:00