Notch's Hello World Example (including DAT usage)

Apr 5, 2012 06:02 AM

; Assembler test for DCPU

; by Markus Persson

             set a, 0xbeef                        ; Assign 0xbeef to register a

             set [0x1000], a                      ; Assign memory at 0x1000 to value of register a

             ifn a, [0x1000]                      ; Compare value of register a to memory at 0x1000 ..  

                           set PC, end                      ; .. and jump to end if they don't match

             set i, 0                             ; Init loop counter, for clarity

:nextchar    ife [data+i], 0                      ; If the character is 0 ..

                 set PC, end                      ; .. jump to the end

             set [0x8000+i], [data+i]             ; Video ram starts at 0x8000, copy char there

             add i, 1                             ; Increase loop counter

             set PC, nextchar                     ; Loop  

:data        dat "Hello world!", 0                ; Zero terminated string

:end         sub PC, 1                            ; Freeze the CPU forever

Just updated your iPhone? You'll find new Apple Intelligence capabilities, sudoku puzzles, Camera Control enhancements, volume control limits, layered Voice Memo recordings, and other useful features. Find out what's new and changed on your iPhone with the iOS 18.2 update.

Related Articles

Comments

No Comments Exist

Be the first, drop a comment!