3 ms·
This is the sort of thing where Dear ImGui is simply perfect :) I also used it for the debugging UI in my emulators (https://floooh.github.io/tiny8bit/ https://
by flohofwoe 3y ago
This is the sort of thing where Dear ImGui is simply perfect :) I also used it for the debugging UI in my emulators (https://floooh.github.io/tiny8bit/ https://floooh.github.io/tiny8bit/) - here's an example screenshot with the debug UI open (and the emulator integrated into a VSCode tab):
https://floooh.github.io/images/vscode-wasm-wasi-3.webp https://floooh.github.io/images/vscode-wasm-wasi-3.webp
There are a lot of advantages when you can tightly couple the UI with the guts of the emulator (e.g. everything in the UI automatically shows the current emulator state at full display refresh rate without having to worry about UI update and rendering performance or doing complicated "data binding", just point the UI to the memory locations of the "live data", and everything updates automatically).
PS: the Spectrum Analyzer is actually using emulators from that same 'chips project' (https://github.com/floooh/chips https://github.com/floooh/chips). Props for the shoutout :)
Here in the "sister project" there are some re-used windows from my debugger ui visible (https://colourclash.co.uk/cpc-analyser/ https://colourclash.co.uk/cpc-analyser/), which I think is very cool because it shows how existing Dear ImGui code can be used as UI components (for instance I also re-used the hex editor from here: https://github.com/ocornut/imgui_club/tree/main/imgui_memory_editor https://github.com/ocornut/imgui_club/tree/main/imgui_memory...)
- gschizas 3y agoJust one note: Please use UI scaling; it's near impossible to read on a 150% 4k screen (much less on 100%). Unfortunately, young eyes don't last forever. The UI looks very much like ImHex (https://imhex.werwolv.net/ https://imhex.werwolv.net/). Is this a coincidence, or is it the standard ImGui look and feel? I wish ImHex had a decompiler for Z80 as well, but this is much better.
- flohofwoe 3y agoIt's the vanilla ImGui color scheme. TBH I never tried it with scaling, but at least here in Chrome on macOS, it actually works nicely with the browser's scale feature (e.g. Cmd-plus/minus): https://floooh.github.io/tiny8bit/c64-ui.html https://floooh.github.io/tiny8bit/c64-ui.html Actually a bit surprising because I don't handle the scaling explicitly anywhere. PS: I also got "computer glasses" for that problem ;)
- crabfists 3y agoIt's not very well documented but if you put a font in the ./Fonts directory you can tell Spectrum Analyser to use it. If you edit the GlobalConfig.json you can put the font filename in the "Font" section. You can set the font size via the "FontSizePixels" entry. We can try to make this more obvious.