5 ms·
Spectrum Analyser, a Sinclair ZX Spectrum reverse engineering tool
- snvzz 3y agoI love how it is now open source under MIT license.
- matternous 3y agoInteresting choice of name https://en.m.wikipedia.org/wiki/Spectrum_analyzer https://en.m.wikipedia.org/wiki/Spectrum_analyzer
- rkagerer 3y agoYeah - great tool, awful name (because it already means something else).
- grodriguez100 3y agoI would say that was on purpose. I have to say I personally like it :-)
- bowsamic 3y agoI think it's a great name, and it's easily found as "ZX Spectrum analyser", which is the obvious description of the tool. I think it's actually kind of a perfect name
- EvanAnderson 3y agoI never had a Spectrum, however I recognized the game being displayed in the screenshots. TIL that "Star Quake", that I played on a 286 w/ a Hercules card and a horrendous TSR CGA "emulator", was actually a Spectrum game first[1]. Maybe I should give the Spectrum a look. [1] https://en.wikipedia.org/wiki/Starquake_(video_game) https://en.wikipedia.org/wiki/Starquake_(video_game)
- rahimnathwani 3y agoAnother cool spectrum-first game was Nebulus. I remember buying it at a shop on Tottenham Court Road. I recently learned Nintendo released versions of the game as 'Castelian'. The level design, at least for level 1, is the same as in the original Nebulus. https://en.wikipedia.org/wiki/Nebulus_(video_game) https://en.wikipedia.org/wiki/Nebulus_(video_game)
- JNRowe 3y agoThere is a fun SDL remake¹, packages available in Debian and a few other distributions too. ¹ https://gitlab.com/roever/toppler/ https://gitlab.com/roever/toppler/
- mrspuratic 3y agoaka "Tower Toppler" or "Castelian". The 3D tower rotation was mind blowing--on an 8-bit with no coprocessor or even hardware multiply! Walk-through video: https://www.youtube.com/watch?v=tuLgJeXBB-A https://www.youtube.com/watch?v=tuLgJeXBB-A
- vardump 3y agoWhy would you need a coprocessor or hardware multiply? It's all tiles and sprites just like Super Mario Brothers. Ok, on the Spectrum software emulated, but still. Tower rotation is achieved by scrolling (well, rolling really) 8x8 character bitmaps at varying rates. It gives a very convincing 3D-rotation illusion, while being nothing like it at all.
- 3y ago
- foobarian 3y agoMan, I wish I had this in the 80s :-) Reminds me of computers that came with very nice built-in monitors [1] which could be quite a luxury. Orao [2] had a monitor with a miniassembler and disassembly. [1] https://en.wikipedia.org/wiki/Machine_code_monitor https://en.wikipedia.org/wiki/Machine_code_monitor [2] https://en.wikipedia.org/wiki/Orao_(computer) https://en.wikipedia.org/wiki/Orao_(computer)
- becurious 3y agoThat’s great! Back in the day I’d have to take a snapshot with my +D and then disassemble parts of it and print them on my dot matrix printer. At least the HiSoft Devpac Mons debugger was relocatable so you could move it around to get out of the way of the code you wanted to look at. Which then became a target of curiosity for how the relocation code worked :)
- grodriguez100 3y agoI love this :-)
- bowsamic 3y agoLooks great, also it's quite funny, it seems to me like just how HTML+JS+CSS is the universal GUI of the web, imgui seems to be becoming the universal GUI of native applications. PS: I wish we had something this nice for x86 DOS programming. I have been trying to write little 256b intros for DOS and the debugging options for .COM files are not great.
- flohofwoe 3y agoThis 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 ;)
- roydivision 3y agoReally nice project, props to Sam!
- crabfists 3y agoHi, I'm the maintainer of the colourclash website for Spectrum Analyser. Unfortunately I hit a bandwidth limit so the site is currently available. In the meantime, feel free to join our discord server for Spectrum Analyser and the other 8 bit analysers. You can download the latest PC build of Spectrum Analyser there on the #builds channel. https://discord.gg/VQ3m6W4ZRu https://discord.gg/VQ3m6W4ZRu Or if you want to build your own, the github page is here: https://github.com/TheGoodDoktor/8BitAnalysers https://github.com/TheGoodDoktor/8BitAnalysers I'm not the author of the tool. I'm just helping out TheDoktor. I'm also working on the CPC Analyser port. Good to see this cool tool getting some attention!