Skip to content

Commit 738aa47

Browse files
authored
Create development.md
1 parent 0cd4d72 commit 738aa47

1 file changed

Lines changed: 18 additions & 0 deletions

File tree

doc/development.md

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
# Development tips & tricks
2+
3+
## Platform
4+
5+
It's often best to develop on a modern PC instead of a Raspberry Pi. DMDReader has been developed mostly on Windows. Compilation is a lot faster on a PC than on a Raspberry Pi.
6+
7+
## Memory
8+
9+
Note that DMDReader uses some C++ frameworks. Modern C++ frameworks use a lot of templates. The good thing about this: You can write very clean code that is also very fast.
10+
The bad thing: the compiler has a lot of work to do to deal with all these templates. This means on a slow system it will take some time to compile it. You also need a lot of
11+
memory. Use a system with at least 2GB of RAM. If you run muliple jobs in parallel, have at least 2GB RAM physical RAM per job.
12+
13+
## Timing
14+
15+
A real pinball machine delievers DMD frames at a fixed rate - independent if something has been changed or not. DMDReader (and even the RP2040 hardware interface for real pinballs)
16+
deduplicate frames. By default, a frame is only being processed if something has changes. This can create problems with some processors (e.g. the VNI module) - that expect frames at
17+
a fixed rate.
18+
There are some workarounds to deal with this:

0 commit comments

Comments
 (0)