Commit Graph

172 Commits

Author SHA1 Message Date
David Banks
8a857ae45e Experimental AtomFast6502 adding bus mon function
Change-Id: Ib5115d9e7b736c45bb46a0a063325a0173b6f823
2015-10-31 11:46:40 +00:00
David Banks
eaf6f90ab6 ICE T65: Fixed the single stepping issue with AlanD's core (sync bug); increased CCLK rate to 25MHz
Change-Id: I226a63a10b80973001f4b0ee825dcecadaece8cb
2015-10-27 19:34:02 +00:00
David Banks
3c31e9e875 ICT T65: Fixed an issue the caused an immediate NMI on a Beeb Model B
Change-Id: I5f0e00fc5e4f647c81778821282316e812215cb8
2015-10-27 18:03:45 +00:00
David Banks
344e03185d Reworked the 6502 single stepping to hide the fact that register writes are pipelined
Change-Id: I6d9157e3d9ade9af72e11d255b224cc7f210f376
2015-10-26 16:44:25 +00:00
David Banks
9c4b9aa944 In ICE-T65 fixed the timing of ICE initiated read/write cycles to give them a whole cycle
Change-Id: I6bfdf624ad4340a219096f231334ec8a9bbfc5af
2015-10-26 12:54:17 +00:00
David Banks
aa91a4826c Added missing file: ipcore_dir/WatchEvents.ngc
Change-Id: Id89311ba94b79dec4c9c22c96b98dc47459da180
2015-10-26 12:19:11 +00:00
David Banks
08f266d6a0 Added missing file: ipcore_dir/WatchEvents.xco
Change-Id: I5d2a57955e53faf4cacccebd4d4b2bc3bc61424d
2015-10-25 08:51:29 +00:00
David Banks
92177196c0 Experimental AtomFast6502 with a different clocking arrangement
Change-Id: Ic6f5275bc0982254e9b5508ec79f0365712657de
2015-09-23 14:56:31 +01:00
David Banks
d3224a651d Fixed a bug with the I Flag being 0 rather than 1 following reset
Change-Id: Ifc1573026e93944d33a756bd601200441ba20c1d
2015-08-29 20:57:49 +01:00
David Banks
d44d3a889e Updated 6809 clocking scheme; tested on Dragon 32 and Simple 6809; fixed 6809 reset command bug; version now 0.64
Change-Id: Id772f50d3676b057ed31c001b211fdf92a9f49f8
2015-08-08 13:49:13 +01:00
David Banks
aeed6c1a65 Further improvements to the clocking of the 6809 for Roland to try
Change-Id: Ida0384c65ca405f50652a3c26665d1c5adac0748
2015-07-19 18:04:22 +01:00
David Banks
66b65f1bd6 Changed 6809 timing to provide bags of write address setup and hold time, version now 0.62
Change-Id: I1da33ddd81253f123e231e3cfad7e086bd3de08d
2015-07-16 18:16:07 +01:00
David Banks
318f7678a3 Further optimization of static data in disassemlers, data memory usage < 1K, version now 0.61
Change-Id: Ibcb5fd3e9141022cb940ebc70ca5369bdeb738c4
2015-07-07 16:20:32 +01:00
David Banks
d6c9287067 Changed to 18K ROM/2K RAM, version now 0.60, bitfiles published for all three designs
Change-Id: I2dd2b203e68d3ddde7d8bbb9052d4d46b802fbbb
2015-07-06 18:49:57 +01:00
David Banks
2677a945aa Corrected the function of EXTAL and XTAL; version now 0.53
Change-Id: Ib9c329b06827a83c8d9d307db12f16a91e2cb977
2015-07-04 17:50:03 +01:00
David Banks
3afc09c07d Added a jumper to select between 6809 and 6809E clocking; increased breakpoints to 8; version now 0.52
Change-Id: If17d2d0ff336fde2aafd9613eba47bbe7392ad8c
2015-07-04 16:51:08 +01:00
David Banks
34dacfb72e Reworked the 6809 single stepping to hide the fact that register writes are pipelined
Change-Id: I60d51d4584c44e36db37fb3953af818d83cf7958
2015-07-04 14:51:40 +01:00
David Banks
5dad7cf788 Some small bug fixes
Change-Id: I2119c57f24be5675b4530fda9dc3b971935706c7
2015-07-04 14:50:55 +01:00
David Banks
17d02c19fa Increased Z80 drive to 4mA, as 2mA is barely sufficient to counter the 1K5 GODIL pullups
Change-Id: I09e512bb7415c6b69e97df7bae870647adcd12d4
2015-07-04 14:49:59 +01:00
David Banks
7bcea43c68 Shrunk the 6809 disassembler; version now 0.50; silly mistake
Change-Id: I49f59501559778d501284857d8afe5feca0bc6c0
2015-07-02 18:02:06 +01:00
David Banks
1e76d0d980 Shrunk the 6809 disassembler; version now 0.50
Change-Id: I2776857e2b080ac90d45e79a20ad530f16abfd46
2015-07-02 18:00:40 +01:00
David Banks
20269623ea Initial checkin of ICE-6809; version now 0.49
Change-Id: I502840a0be0fa58adfc9ddb27c4e2a35a7c2849c
2015-07-02 15:35:05 +01:00
David Banks
10be34c618 Cleaned up/commented the C code base; version now 0.48
Change-Id: I415c97b579e247f7f3d4fdc476b9e5ed6b1e7e70
2015-07-01 12:08:30 +01:00
David Banks
727a1c0f2a Implemented IO watches/breakpoints; fixed a bug with stepping through CB/DD/ED/FD prefixed opcodes which have 2 M1 cycles; version not 0.47
Change-Id: Iad5cb406bd96a8020ccb65be5cd440bebec20481
2015-06-30 14:19:19 +01:00
David Banks
caec07483d Fixed a problem with breakpoints running on one instruction on the Z80, version now 0.46
Change-Id: I597087a8ed7d4da211c706e0c4972f5d037706ee
2015-06-29 17:16:23 +01:00
David Banks
8a2615d6b3 Added additional IO outputs to 6502 designs
Change-Id: I6253c507e766f8af13e52556818f725fda198cb4
2015-06-29 14:47:31 +01:00
David Banks
6d0ec41db0 Added commands to read/write/dump Z80 IO space; version now 0.45
Change-Id: I85e99f8c19bd285f2dd69ea46b0e662499a5d9e2
2015-06-29 14:43:20 +01:00
David Banks
b55ee9789e Started work on IO access code
Change-Id: Ib644d8aada47f04594fc6b9c6f6734e02066593b
2015-06-29 13:03:32 +01:00
David Banks
e66ecdfc3e Made sure CycleCount stopped when Z80 is paused
Change-Id: Ia5d4a7d216a089e06e1aaa86bcd43d512a429aaa
2015-06-28 22:17:32 +01:00
David Banks
0c0fde6a32 Working Z80 memory access and disassembler in the small GODIL, incremented version to 0.44
Change-Id: I718be7476ec330743c206e737389856fc4b41fc8
2015-06-28 19:42:25 +01:00
David Banks
e4e0f864df Switched to Timing-Driven Packing, fixed a bug with instr wait states that meant single stepping executed RST 38 because FF was read off databus; increased comparators to 8; incremented version to 0.43. Works with 100pF capgit add -u!
Change-Id: Ie6c8c8fc610599516eb1baf957d001079713e462
2015-06-27 18:40:12 +01:00
David Banks
401af8253a Simplified down to a single clear command that remove all watches/breakpoints at a given address; updated version to 0.42
Change-Id: I1a1f931a6d39f913610e4b58d54f102b264902e7
2015-06-27 11:20:49 +01:00
David Banks
9a68d96233 Initial checking of Z80 work; slight refactor of BusMonCore; version updated to 0.41
Change-Id: I95f574abb93e84ffb5ca44c45b4c9aa8304e2e58
2015-06-27 11:07:58 +01:00
David Banks
eec6e10440 Added option to do repeat a read/write command n times (where n can be large), incremented version to 0.37
Change-Id: I4b1b02e8d67a581acbf4d5b044e86ffb2bc7e27e
2015-06-22 18:11:11 +01:00
David Banks
3c7fb3429e Updated AtomBusMon pinout to match 6502, would allow piggy-backing in principle
Change-Id: Ib2c8b2c3fd55f7fbba9b7aecc3d2289ff3114305
2015-06-20 22:36:10 +01:00
David Banks
2ec8488190 Saved ~350 bytes of code memory by further optimizing the disassembler, incremented version to 0.36
Change-Id: Icd551c83acbc07f80af7e4ed426a6da062d7da9c
2015-06-20 18:18:05 +01:00
David Banks
5322c18443 Fixed a bug in the logging of memory errors; incremented version to 0.35
Change-Id: I6cc34881abe359bfe2cc8ae5e84fb2296c49096a
2015-06-20 16:56:56 +01:00
David Banks
68f6dccf89 Added crc and memory test commands, incremented version to 0.34
Change-Id: Ib259fcfce3f10b109d6b9606da3c28cb47230196
2015-06-20 16:41:40 +01:00
David Banks
14e4adda94 Implemented cycle counter and data bus monitoring during read/write watches/breakpoints, incremented version to 0.32
Change-Id: I408f57e66800ea58a56896ec4af5d815d1f12c34
2015-06-20 12:30:18 +01:00
David Banks
643c9b2231 Fixed a bug where I had broken watches by doing memory reads while the 6502 was running
Change-Id: I25e446e9574590111fcda4b19de3ff1f31c299e6
2015-06-19 16:59:15 +01:00
David Banks
993f04e395 Added mask to breakpoint/watches; improved disassembly of breakpoints; incremented version to 0.31
Change-Id: If2a68ba1597d8be5479302f15110602614cc25e1
2015-06-19 16:10:07 +01:00
David Banks
73fc5a7eb1 Fixed write breakpoints to stop immediately; switched back to T65 core
Change-Id: I33bc0f7b0dd6caf89572fa4f494c3cc93c673107
2015-06-19 15:37:01 +01:00
David Banks
8a81b56304 Updated to use 65C02 core
Change-Id: Ieb458e48d3dc42cee08a9f03237271f101d105b7
2015-06-19 12:08:38 +01:00
David Banks
fc0993c9fb Checked in AlanD's 65C02 core (version from CoPro65C02)
Change-Id: I856a6034b1507e320ab06cd68df31f6785c1f940
2015-06-19 12:07:20 +01:00
David Banks
60317b002b Mimimised the number of memory reads during disassembly, incremented version to 0.30
Change-Id: I2102acd009b6fc2de62d93571d96b5468905b442
2015-06-18 13:14:10 +01:00
David Banks
824c40f31e Added fill command, memory address reg now auto-increments, version 0.29
Change-Id: I685da6a14cea3dd343dde28c4316bb06ab924bc9
2015-06-18 12:58:37 +01:00
David Banks
35ad735420 Added a jumper enabled fakeTube register at 0xFEE0 with value 0xFE to work around a beeb issue with pullups, incremented version to 0.28
Change-Id: I6b7b79cb01aa350b0caca27e75fb9c689558bcec
2015-06-18 11:01:06 +01:00
David Banks
35f8b5419a Added bitfiles for Roland to test
Change-Id: I03471403aefa0702f7f758c73247a75118a5fb05
2015-06-18 07:52:10 +01:00
David Banks
a3cd8ceae4 Changed to timing of writes slightly as AtomMMC was occasionally failing on New Atom with 0.26. Verified on Beeb. Upped version to 0.27
Change-Id: Iad7639e2984236e9644c5db0331eeec5cd8a1a09
2015-06-17 17:47:04 +01:00
David Banks
2599920e75 Added a register for Din which resolved issue on Beeb, upped version to 0.26
Change-Id: Ic23e4a212675ca58a4e1ad1ea09a020f54b8fdc3
2015-06-17 14:35:25 +01:00