1
0
mirror of https://github.com/mist64/perfect6502.git synced 2026-01-22 23:16:09 +00:00

190 Commits

Author SHA1 Message Date
Michael Steil
6c1f1a504f added --benchmark option to cbmbasic 2025-07-27 17:06:18 +02:00
Michael Steil
7d4e2c0349 Merge pull request #14 from ChrisCoxArt/master
reduce memory usage, increase performance, fix warnings and errors
2025-07-27 16:33:53 +02:00
Michael Steil
85c8b1c971 Merge branch 'master' into master 2025-07-27 16:33:22 +02:00
José Ruiz
fbcd8493a8 build fix and added targets to .gitignore (#12) 2025-07-27 15:50:19 +02:00
Marisa Heit
e8166eddf8 Fix warnings/errors with newer gcc/glibc and vc++ (#10)
Also fixes a memory leak in measure.c
2025-07-27 15:41:21 +02:00
ChrisCoxArt
054bcf51d0 more cleanup for pull request 2021-09-29 20:23:51 -07:00
ChrisCoxArt
63065435a7 cleanup 2021-09-29 19:55:43 -07:00
ChrisCoxArt
32b4fd8f39 remove now redundant subroutine 2021-09-29 16:58:39 -07:00
ChrisCoxArt
3a5dd006b2 remove more init data from state 2021-09-29 16:55:30 -07:00
ChrisCoxArt
2308f14fa5 free and remove from state some items that are not used after init 2021-09-29 16:23:37 -07:00
ChrisCoxArt
efaf184508 remove dep_count after initialization, use differences 2021-09-29 15:54:16 -07:00
ChrisCoxArt
98caf992b4 move gates and dependencies to offsets instead of pointers, reducing memory footprint 2021-09-29 15:29:06 -07:00
ChrisCoxArt
c82d2c8325 make cycle a long, minor cleanup 2021-09-29 14:31:46 -07:00
ChrisCoxArt
a8ace5d6d4 sort gate list and remove duplicates (improves cache coherency a bit) 2021-09-29 14:31:23 -07:00
ChrisCoxArt
d610c3c775 minor cleanup and comments 2021-09-28 23:18:31 -07:00
ChrisCoxArt
cb3cefba9a remove errant measure.o reference in makefile that prevented building (duplicate mains) 2021-09-28 23:18:13 -07:00
ChrisCoxArt
6d74edb47b minor tweaks and cleanup 2021-09-28 22:57:18 -07:00
ChrisCoxArt
b24b4cd93e move node value out of global state 2021-09-28 22:22:31 -07:00
ChrisCoxArt
c5c81e0d30 minor tweaks for performance 2021-09-28 21:09:48 -07:00
ChrisCoxArt
ca293b3783 cleanup 2021-09-28 20:28:18 -07:00
ChrisCoxArt
3ac5525216 put back gitignore entries accidentally removed 2021-09-28 19:34:52 -07:00
ChrisCoxArt
ba0e3dc808 second pass allocation reduction 2021-09-28 19:19:57 -07:00
ChrisCoxArt
55748db9bb first pass allocation reduction 2021-09-28 18:32:02 -07:00
ChrisCoxArt
101b2c9d5d fix bad function declarations and type casting (bring up to relatively modern standards) 2021-09-28 17:33:09 -07:00
Michael Steil
268d16647c fixed measure.c to work with new API 2020-06-13 19:18:57 +02:00
Michael Steil
d4117f915f Create LICENSE 2020-06-04 19:47:38 +02:00
Michael Steil
3e60b6dd44 cleanup: moved cbmbasic and apple1basic demos into subdirectories
* also changed "clang" to "cc"
* enabled optimizations for 64 bit (it's 10 years later!)
* updated README to reflect CPU speed in 2020 (5x faster than 2014!)
* added benchmarking instructions to README
2020-06-04 19:32:59 +02:00
Ian Henderson
cb5469d7c3 optimize addNodeToGroup by improving memory locality 2020-06-04 18:50:24 +02:00
Tom Seddon
350f4b27e0 Add destroyChip. 2019-09-08 15:06:26 +02:00
Michael Steil
224ac909ee Merge pull request #5 from drfiemost/master
Avoid memory pollution
2017-01-22 20:55:00 +01:00
Dr. Fiemost
93bb291203 Fix UBSan error 2017-01-22 19:08:31 +01:00
Dr. Fiemost
dff94ab870 Initialize remaining struct members 2017-01-21 14:17:39 +01:00
Dr. Fiemost
379a588484 Initialize allocated memory 2017-01-21 14:16:26 +01:00
Dr. Fiemost
ed250b1a62 Avoid use of deprecated function 2017-01-21 14:13:06 +01:00
Michael Steil
98026be01f Merge pull request #4 from drfiemost/master
Fix setNode function
2017-01-18 12:39:52 +01:00
Dr. Fiemost
aed0d9a3c3 Fix https://github.com/mist64/perfect6502/issues/3 2017-01-17 20:53:44 +01:00
Michael Steil
4142ac152e moved nodes names into netlist_6502.h 2014-12-01 16:42:48 +01:00
Michael Steil
0269c1bdf1 cleanups 2014-12-01 14:03:16 +01:00
Michael Steil
76d798db79 split code into generic netlist simulation and 6502-specific code 2014-12-01 13:53:46 +01:00
Michael Steil
44cde717a1 cleanup 2014-12-01 13:29:08 +01:00
Michael Steil
c93f229339 cleanup 2014-12-01 13:10:28 +01:00
Michael Steil
4b70feb863 cleanup 2014-12-01 12:48:41 +01:00
Michael Steil
79d5e114ef cleanups 2014-12-01 12:44:03 +01:00
Michael Steil
c7ede71e52 actually de-dup transistors! 2014-12-01 12:31:14 +01:00
Michael Steil
e49ca0be5f cleanups 2014-12-01 12:23:47 +01:00
Michael Steil
b31b545032 malloc'ed all state instead of having a gigantic struct
state_t is now 208 bytes on x86_64 instead of 26 MB. Startup is a little slower though because of ~7000 malloc calls.
2014-12-01 12:10:21 +01:00
Michael Steil
1c9eb78154 cleaned up node names 2014-12-01 11:48:01 +01:00
Michael Steil
fc3082a259 updated copyright 2014-12-01 11:01:11 +01:00
Michael Steil
c4f7cfb449 The state pointer is no longer global, but passed down to every function.
...and surprisingly, it's not any slower. if anything, it's 1% faster.
2014-12-01 11:00:30 +01:00
Michael Steil
b8af4edbbe moved all globals into a single global struct -> 3% speedup with clang :) 2014-11-29 00:55:06 +01:00