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've never done anything with Assembly language before, so it's been an interesting experience. My progress today... <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'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
"Scream through the memory addresses...." AAAAAAAAAAA ;D (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 "help" command will show all the instructions that have been taught so far. <br /><br />[code]LDA #$AA ; Load AA into [A] (Accumulator Register)<br />BNE @write ; branch aka jump to write<br /><br />@write:<br /> STA $4080,X ; Write the value of [A] into address 4080+[X]<br /> INX ; Increment X by 1<br /> CPX #$40 ; Compare [X] to the stopping point, 64 places (40 hexidecimal) and store the result in [Z] <br /> BEQ @end ; If [Z] is equal to 1, jump to the end<br /> JMP $4024 ; Otherwise, jump to the beginning of the loop<br /><br />@end:<br /> INY ; Increment Y just to show it's done[/code]<br /><br />Next up... https://afska.github.io/emudevz/#/levels/assembly-addressing-modes-3-3?r=32<br />