Y
HN Search
Hacker News Search
new
|
comments
|
top
|
jobs
neonz80
searching Neon…
1.
▲
2.
▲
3.
▲
4.
▲
5.
▲
6.
▲
7 ms
·
1.
▲
by
neonz80
23d ago
kernel32 is an official API, you're probably thinking of ntdll. CRT is the C-runtime. Not everything is written in C.
2.
▲
by
neonz80
2mo ago
The first version of the FT2 clone was released 7 years ago.
3.
▲
by
neonz80
2mo ago
They didn't add PImpl support, they added std::indirect which can be used for PImpl among other things.
4.
▲
by
neonz80
3mo ago
Impossible, Signal TUI is written in Rust.
5.
▲
by
neonz80
4mo ago
> Windows users singling out Linux users for not catering to their platform. How the times change... In my experience this was a problem over 25 years ago when I developed for Solaris and other non-Linux operating systems.
6.
▲
by
neonz80
7mo ago
If you put both handlers in the same 256 byte page you can get away with only updating the low byte of the address.
7.
▲
by
neonz80
10mo ago
Why an extra DLL instead of just patching the game executable? With some luck it is a one byte patch (from push 0 to push 4).
8.
▲
by
neonz80
10mo ago
I find that this can reduce overall complexity. It makes it possible to use objects that can not be copied (such as a file descriptor wrapper) and moving can in most cases not fail. Without move semantics you'd have to use smart pointe
9.
▲
by
neonz80
11mo ago
I'm aware of how they are used, but fundamentally there is nothing with the words "array" and "vector" that says that one has a fixed size and the other has a dynamic size. If anything, it should be the other way ar
10.
▲
by
neonz80
11mo ago
I find the short type names for integers and float hard to read. Somehow the size of the type is more important than if it is a signed integer, unsigned integer or a floating point number. Using Vec for arrays is also annoying, repeating th
11.
▲
by
neonz80
11mo ago
RobWords made a video about it a few weeks ago! https://youtu.be/UAT-eOzeY4M
12.
▲
by
neonz80
11mo ago
You should take a look at the presentation I mentioned elsewhere in this thread. You also have to keep in mind that it's not only the branches that use space, but also the error handling code. Code which must be duplicated for every si
13.
▲
by
neonz80
11mo ago
The CPU can not remember an infinite number of branches. Also, many branches will increase code size. With exceptions the unwind tables and unwind code can be placed elsewhere and not take up valuable L1 cache.
14.
▲
by
neonz80
11mo ago
That's a different type of overhead than having unwind tables. With exceptions you wouldn't need a branch after each function call at all.
15.
▲
by
neonz80
11mo ago
There was an interesting talk about C++ exceptions in smaller firmware at CppCon last year: https://youtu.be/bY2FlayomlE Basically, the overhead of exceptions is probably less than handling the same errors manually in any n
16.
▲
by
neonz80
1y ago
I'm not sure about other compilers, but compiling C code as C++ with MSVC ends up with pretty much the exact same code, instruction by instruction. C++ is a bit more strict though especially with casting, so a lot of code won't co
17.
▲
by
neonz80
2y ago
I do not find the Retrotink 4k any less configurable than the OSSC (non-pro, I haven't tried the pro). Note that the 4k is nothing like the 5X-Pro which is more plug and play.
18.
▲
by
neonz80
2y ago
I've been using the OSSC to upscale a 50 Hz RGB signal (SCART) to 1024x1024 (256 lines duplicated 4x). Both my HDMI capture cards happily accept that resolution with the right software. I haven't tried the OSSC Pro, but the Retrot
19.
▲
by
neonz80
2y ago
https://en.wikipedia.org/wiki/Unidirectional_network
20.
▲
by
neonz80
2y ago
The compiler can optimize this. See https://gcc.godbolt.org/z/hxW7hhrd7 #include <cstdint> uint32_t read_le_uint32(const uint8_t* p) { return p[0] | (p[1] << 8) | (p[2] << 16) | (p[3] &l
21.
▲
by
neonz80
2y ago
I guess Ethereal is available :)
22.
▲
by
neonz80
2y ago
I put my CPU code up here: https://github.com/neonz80/shallenge-x86 . It requires an x86 CPU with the SHA256 extension. It manages 1.1 GH/s on an Intel i7-13700K.
23.
▲
by
neonz80
2y ago
You can probably get a 2x speedup by shortening the string so that it fits in one block.
24.
▲
by
neonz80
2y ago
I'm a bit late to the game, but I managed to squeeze out about 1 GH/s on an i7-13700K.