Programming with Ophis
<<< Previous | Example Programs | Next >>>

# `tutor3.oph`

    .include "c64-1.oph"

    .macro print
            ldx #0
    _loop:  lda _1, x
            beq _done
            jsr chrout
            inx
            bne _loop
    _done:
    .macend

    .macro greet
            `print hello1
            `print _1
            `print hello2
    .macend

            lda #147
            jsr chrout
            `greet target1
            `greet target2
            `greet target3
            `greet target4
            `greet target5
            `greet target6
            `greet target7
            `greet target8
            `greet target9
            `greet target10
            rts

    hello1: .byte "HELLO, ",0
    hello2: .byte "!", 13, 0

    target1:  .byte "PROGRAMMER", 0
    target2:  .byte "ROOM", 0
    target3:  .byte "BUILDING", 0
    target4:  .byte "NEIGHBORHOOD", 0
    target5:  .byte "CITY", 0
    target6:  .byte "NATION", 0
    target7:  .byte "WORLD", 0
    target8:  .byte "SOLAR SYSTEM", 0
    target9:  .byte "GALAXY", 0
    target10: .byte "UNIVERSE", 0

<<< Previous | Home | Next >>>
`kernal.oph` | Up | `tutor4a.oph`