couriersud
deacff7ffa
netlist: refactor model code. (nw)
2019-03-18 23:27:36 +01:00
couriersud
76b92133dd
Fix indentation. (nw)
2019-03-18 00:10:47 +01:00
couriersud
9534a0233c
netlist: improve readability. (nw)
2019-03-18 00:01:41 +01:00
couriersud
46762510c9
netlist: Added B-E and B-C capacitance to EB model. [Couriersud]
...
Despite the overhead - two devices more per transistor - this addition
significantly reduces computing time on switching conditions by reducing
the needed Newton-Raphson loops dramatically.
2019-03-17 23:42:08 +01:00
couriersud
43c6cad7dd
netlist: Add UJT example for 2N6027.
2019-03-17 15:10:15 +01:00
couriersud
ed9c85904e
Fix bug. (nw)
2019-03-17 15:10:14 +01:00
couriersud
0882868e11
netlist: Fix formatting bug. (nw)
2019-03-17 03:17:15 +01:00
couriersud
4b9f90c4a9
netlist: add MC1455P as device. (nw)
2019-03-17 00:48:40 +01:00
couriersud
804439399b
netlist: Add output resistance to NE555.
...
This is a first-order approximation of the output driving stage. A logic
output with appropriate family may be better but would add more
complexity.
2019-03-17 00:05:08 +01:00
couriersud
d27b434ca9
netlist: fix bug in LOGIC_INPUT devices. (nw)
...
Now family parameter is actually used. Also fixed bugs in code using
this device.
gamemachine now creates sound at realistic pitch.
2019-03-16 22:25:12 +01:00
couriersud
a5d6b7c5b8
gamemachine: add netlist audio. [Couriersud]
2019-03-16 19:07:33 +01:00
couriersud
e80276bb23
New working machine
...
-----------
Rebound [DICE team, Couriersud]
2019-03-12 02:04:28 +01:00
Nigel Barnes
5511ce41e2
mtx: Added expansion bus with SDX floppy controller.
...
- 80 column card with SDX in CP/M mode.
- ROM/RAM banking fixed for CP/M, and MTX500 now correctly detected.
- Support for Type 03 and Type 07 .mfloppy images.
- Added alternate MTX2 romset (German).
- Keyboard ROM now selected in Configuration.
- Quickload .RUN files.
2019-03-10 17:23:39 +00:00
couriersud
78c9ef697b
netlist: fix breakout paddle regression. (nw)
...
The interesting parts in datasheets are always those which are not
mentioned.
2019-03-10 14:15:14 +01:00
Couriersud
1a2af1a23e
netlist: add reverse parameter to 3-pin-potentiometer. (nw)
2019-03-09 00:34:40 +01:00
Couriersud
b346dea279
netlist: fix reset bug in 555 device. (nw)
2019-03-09 00:33:49 +01:00
Couriersud
07485fd7eb
netlist: fix bugs in object initialization order. (nw)
2019-03-06 23:45:20 +01:00
couriersud
83a0e93837
netlist: remove printf. (nw)
2019-03-02 13:11:37 +01:00
couriersud
618f33f586
netlist: refactoring. (nw)
2019-03-01 19:52:19 +01:00
couriersud
17fcc38a25
netlist: memory code refactoring. (nw)
2019-03-01 10:30:24 +01:00
couriersud
2b49e6ed11
netlist: clang tidy. (nw)
2019-03-01 07:48:01 +01:00
couriersud
20551e42a7
Netlist: improve readability. (nw)
2019-03-01 07:48:01 +01:00
couriersud
893e676387
netlist: cosmetic changes - mostly indentation. (nw)
2019-03-01 07:48:00 +01:00
couriersud
d00de16b41
netlist: analog readability refactoring. (nw)
...
Change the sign of go (or in other terms a12 and a21 matrix stencil
elements). This should make further optimization of matrix population
easier.
In addition hopefully improve the readability of the code by sacrifying
overloads for more verbose member names.
2019-02-25 22:11:04 +01:00
couriersud
6a3efe52d6
netlist: fix bugs in the alignment code. (nw)
2019-02-25 21:17:59 +01:00
couriersud
2e055aa97b
netlist: tidy changes and better constexpr support for ptime class. (nw)
2019-02-24 18:45:16 +01:00
couriersud
0e07f9ac34
netlist: more alignment related refactoring. (nw)
2019-02-24 18:45:16 +01:00
couriersud
a7a8186283
Move fillmatrix to to matrix solver base class. (nw)
2019-02-24 18:45:15 +01:00
couriersud
89e0f698b6
Prepare further optimization. (nw)
2019-02-24 18:41:42 +01:00
Vas Crabb
0ed2d2684e
srcclean (nw)
2019-02-24 14:25:42 +11:00
couriersud
a65390cad5
netlist: Fix relative include paths and a conflict. (nw)
...
nl_types.h is part of libc++. Any project with a file with the same name
on the include path just fails to compile. Renamed to nltypes.h
2019-02-23 18:54:29 +01:00
couriersud
672f9b092a
Move ptime struct into plib namespace and fix relative includes. (nw)
2019-02-23 18:54:27 +01:00
couriersud
0b3787d5f4
netlist: Fix some more exotic compile options. (nw)
...
128bit integers on kaby lake are not that much slower than 64bit. This
may be an option for MAME's attotime as well.
2019-02-23 16:24:01 +01:00
couriersud
f44bc8108c
Fix indentation. (nw)
2019-02-22 22:06:05 +01:00
couriersud
66154af0f2
netlist: fix visibility issues and more issues reported by tidy. (nw)
2019-02-22 21:46:55 +01:00
couriersud
cf73ccc764
netlist: memory management. [Couriersud]
...
Memory management in plib is now alignment-aware. All allocations
respect c++11 alignas. Selected classes like parray and aligned_vector
also provide hints (__builtin_assume_aligned) to g++ and clang.
The alignment optimizations have little impact on the current use cases.
They only become effective on bigger data processing.
What has a measurable impact is memory pooling. This speeds up netlist
games like breakout and pong by about 5%.
Tested with linux, macosx and windows cross builds. All features are
disabled since I can not rule out they may temporarily break more exotic
builds.
2019-02-22 08:18:01 +01:00
couriersud
064050323e
netlist: fix access specifiers. (nw)
2019-02-20 20:53:56 +01:00
couriersud
a5f3787058
netlist: fix a bug and some performance tweaks. (nw)
2019-02-20 20:16:08 +01:00
Vas Crabb
7983685096
(nw) clean up trivial stuff - the device delegate boilerplate is ugly, I will address it ASAP
2019-02-19 20:19:15 +11:00
couriersud
6207d7d2d3
netlist: tick off some issues clang-tidy highlights. (nw)
2019-02-18 20:22:16 +01:00
couriersud
17d784d83b
netlist: remove locked-in context from sources. (nw)
2019-02-17 23:52:05 +01:00
couriersud
1fe9f5e2e5
netlist: refactoring startup process and array usage. (nw)
2019-02-17 18:30:34 +01:00
Vas Crabb
01ccbd89c9
(nw) remove some superfluous const, eliminate a superfluous temp, remove superflous semicolons, etc. and also fix a known broken build script change
2019-02-18 00:48:52 +11:00
couriersud
55000018e7
netlist: Separation of duties. (nw)
...
Make it clearer what is used during parsing a netlist, "compiling" a
netlist and execution of a netlist.
2019-02-16 14:31:59 +01:00
couriersud
b113d0c26d
netlist: memory pool now supports aligned storage. (nw)
...
Set USE_MEMPOOL to 1 to try this (max 5% performance increase).
For mingw, there is no alignment support. This triggers -Wattribute
errors which due to -Werror crash the build.
2019-02-16 00:05:21 +01:00
couriersud
c5a513ca90
netlist: more memory allocation refactoring. (nw)
2019-02-14 01:16:39 +01:00
couriersud
aad01d572a
netlist: indent. (nw)
2019-02-13 23:23:14 +01:00
couriersud
fb685c05b9
netlist: memory allocation clean-up. (nw)
2019-02-13 22:37:07 +01:00
couriersud
a905dffd08
netlist: More cpp core guidelines alignment. (nw)
2019-02-11 22:19:08 +01:00
couriersud
83bd138bec
netlist: Fix crashes on certain hardware/library combos. (nw)
...
At least on macosx memory used by an object seems to be invalidated
before the dtor is executed. This of course is deadly for child objects
with references to the parent-in-deletion which may call back into the
parent.
One of the worst issues I had to fix. Ever. Lesson learnt: No tricks in
dtors. Never.
2019-02-09 23:07:27 +01:00