Texter program for r216

  • HuntaBadday
    28th Nov 2019 Member 1 Permalink

    https://powdertoy.co.uk/Browse/View.html?ID=2486335   <--texter

     

    Hi, I made this texter program for the R216 by LBPHacker

     

    https://powdertoy.co.uk/Browse/View.html?ID=2303519   <--LBPHacker's computer

     

    Here is the SRC:

     

    start:
    mov sp, 0
    mov r10, 0
    mov r4, 0x1000
    mov r5, 7
    send r10, 0x1000
    send r10, 0x200A
    bump r10
    call clear
    send r10, 0x1000
    call print
    call clear

    main:
    call cur
    call chardec
    jmp main

    dataexit:
    mov r4, 0x1020


    clear:
    send r10, 0x1000
    mov r1, 30
    mov r0, 12
    .clear:
    send r10, r1
    send r10, r1
    send r10, r1
    send r10, r1
    send r10, r1
    send r10, r1
    send r10, r1
    send r10, r1
    send r10, r1
    send r10, r1
    send r10, r1
    send r10, r1
    send r10, r1
    send r10, r1
    send r10, r1
    send r10, r1
    sub r0, 1
    jnz .clear
    ret

    cur:
    mov r1, r5
    send r10, r4
    send r10, 0x7f
    .cur:
    wait r2
    jns bumpit
    sub r1, 1
    jnz .cur
    send r10, r4
    send r10, 32
    mov r1, r5
    .cur1:
    wait r2
    jns bumpit
    sub r1, 1
    jnz .cur1
    jmp cur

    bumpit:
    send r10, r4
    bump r10

    recieve:
    recv r2, r10
    jnc recieve
    ret

    chardec:
    cmp r2, 8
    je back
    cmp r2, 13
    je enter1
    jmp charprint

    back:
    send r10, 32
    send r10, r4
    sub r4, 0x0001
    cmp r4, 0x0FFF
    je reset
    back2:
    send r10, r4
    send r10, 8
    send r10, r4
    ret


    reset:
    mov r4, 0x1000
    jmp back2

    charprint:
    send r10, r2
    add r4, 0x0001
    ret

    enter1:
    send r10, 32
    add r4, 0x0010
    cmp r4, 0x10C0
    jge reset2
    enter2:
    and r4, 0x10F0
    send r10, r4
    ret

    reset2:
    and r4, 0x100F
    add r4, 0x00B0
    jmp enter2

    print:
    mov r0, data
    .print:
    mov r6, [r0]
    jz exit
    add r0, 1
    send r10, r6
    jmp .print

    data:
    dw 0x1000 ,0x200e
    dw "-----Texter-----"
    dw 0x2004, 0x1017
    dw "By"
    dw 0x200a, 0x1020
    dw "--HuntaBadday!--"
    dw 0x1040, "> Press any",0x1052, "button to", 0x1062, "continue!", 0x1072
    dw "So you don't", 0x1082, "have to wait", 0x1092, "any longer.", 0

    exit:
    wait r6
    js exit
    bump r10
    ret

    Edited 2 times by HuntaBadday. Last: 28th Nov 2019