NEW AUTO 3,1 .LIST OFF .OP 65C02 .OR $2000 .TF root/tuitest *-------------------------------------- .INB inc/macros.i .INB inc/a2osx.i .INB inc/libtui.i *-------------------------------------- .DUMMY .OR ZPBIN ZS.START ZPPtr1 .BS 2 hScreen .BS 1 hListBox .BS 1 ZS.END .ED *-------------------------------------- * File Header (16 Bytes) *-------------------------------------- CS.START cld jmp (.1,x) .DA #$61 6502,Level 1 (65c02) .DA #1 BIN Layout Version 1 .DA #0 S.PS.F.EVENT .DA #0 .DA CS.END-CS.START Code Size (without Constants) .DA DS.END-DS.START Data Segment Size .DA #32 Stack Size .DA #ZS.END-ZS.START Zero Page Size .DA 0 *-------------------------------------- .1 .DA CS.INIT .DA CS.RUN .DA CS.DOEVENT .DA CS.QUIT L.LIBTUI .DA LIBTUI L.LBOX1 .DA LBOX1 L.MSG.Screen .DA MSG.Screen .DA 0 *-------------------------------------- CS.INIT >LDYA L.LIBTUI >SYSCALL LoadLib bcs .9 sta hLIBTUI .9 clc rts *-------------------------------------- CS.RUN >LIBCALL hLIBTUI,LIBTUI.Open bcs .9 sta hScreen >SYSCALL GetMemPtr >STYA ZPPtr1 >PUSHW L.MSG.Screen ldy #S.OBJ.X1 .1 lda (ZPPtr1),y >PUSHA iny cpy #S.OBJ.Y2+1 bne .1 >PUSHBI 6 >SYSCALL printf >PUSHB hScreen >PUSHW L.LBOX1 >LIBCALL hLIBTUI,LIBTUI.LBOXNew bcs .9 sta hListBox .2 >SYSCALL GetChar bcs .9 cmp #3 beq .9 >SYSCALL putchar bcc .2 .9 rts *-------------------------------------- CS.DOEVENT sec do not discard TIMER event rts *-------------------------------------- CS.QUIT lda hScreen beq .1 >LIBCALL hLIBTUI,LIBTUI.Close .1 lda hLIBTUI beq .8 >SYSCALL UnloadLib .8 clc rts *-------------------------------------- CS.END *-------------------------------------- LIBTUI .AZ "libtui" hLIBTUI .BS 1 *-------------------------------------- MSG.Screen .AZ "Screen : X1=%d, Y1=%d, W=%d, H=%d,X2=%d, Y2=%d\r\n" *-------------------------------------- LBOX1 .DA #S.OBJ.T.LBOX T .BS 3 .DA #10 X1 .DA #4 Y1 .DA #20 W .DA #10 H LBOX1.Title .AZ "Title" *-------------------------------------- .DUMMY .OR 0 DS.START DS.END .ED *-------------------------------------- MAN SAVE root/tuitest.s ASM