Dragon's Hobbies - Blog

EmuDevz

By Dragon on 2025-10-17 03:50:21 UTC

Today I came across an article mentioning an educational game about developing game software.<br /><br />https://hackaday.com/2025/10/16/emudevz-is-literally-a-software-game/<br /><br />[b]EmuDevz[/b], a game in which you develop an 8-bit emulator by [Rodrigo Alfonso].<br /><br />https://afska.github.io/emudevz/#/<br /><br />I&#39;ve never done anything with Assembly language before, so it&#39;s been an interesting experience. My progress today...&nbsp; <br /><br />Intro<br /> * Introduction (https://afska.github.io/emudevz/#/levels/getting-started-introduction?r=19) <br /> * Quick Tutorial<br /> * Architecture<br />Assembly<br /> * Example Program<br /> * Now It&#39;s Your Turn<br /> * Reading From Memory<br /> * Flags<br /> * Branching (https://afska.github.io/emudevz/#/levels/assembly-addressing-modes-1-3?r=18)<br />

Replies


dragon on 2025-11-05 03:26

&quot;Scream through the memory addresses....&quot; AAAAAAAAAAA&nbsp; ;D&nbsp; (https://afska.github.io/emudevz/#/levels/assembly-addressing-modes-2-3?r=31) <br /><br />It took a while for me to get this to work because I was jumping back to the wrong spot. It had also been a couple weeks since doing anything with this, so I had forgotten some things. Fortunately, the &quot;help&quot; command will show all the instructions that have been taught so far.&nbsp; <br /><br />[code]LDA #$AA ; Load AA into [A] (Accumulator Register)<br />BNE @write ; branch aka jump to write<br /><br />@write:<br />&nbsp; STA $4080,X ; Write the value of [A] into address 4080+[X]<br />&nbsp; INX ; Increment X by 1<br />&nbsp; CPX #$40 ; Compare [X] to the stopping point, 64 places (40 hexidecimal) and store the result in [Z] <br />&nbsp; BEQ @end ; If [Z] is equal to 1, jump to the end<br />&nbsp; JMP $4024 ; Otherwise, jump to the beginning of the loop<br /><br />@end:<br />&nbsp; INY ; Increment Y just to show it&#39;s done[/code]<br /><br />Next up... https://afska.github.io/emudevz/#/levels/assembly-addressing-modes-3-3?r=32<br />