;================================================================== ;=== ;=== Name: Hello ;=== ;=== Author: Bjørn Reese ;=== ;=== This source is Public Domain. ;=== ;================================================================== ;--- Comment ------------------------------------------------------ ; ; TAB = 8 ; POINTER = ^ ; ; A simple example of how to use "con.library". ; ;------------------------------------------------------------------ ;--- System ------------------------------------------------------- INCDIR INCLUDE: ;--- Include ------------------------------------------------------ INCLUDE exec/exec_lib.i INCLUDE intuition/intuition.i INCLUDE work/con_lib.i ;or whereever you keep them. INCLUDE work/con.i ;--- Macro -------------------------------------------------------- CALL: MACRO jsr _LVO\1(a6) ENDM ;================================================================== ;=== ;=== CODE AREA ;=== ;================================================================== SECTION Reese,CODE start: ;--- Open Con Library move.l (_SysBase).w,a6 moveq #0,d0 lea sConName(pc),a1 CALL OpenLibrary move.l d0,pConBase ;--- Open ConWindow (with cursor off) move.l pConBase(pc),a6 lea dMyWindow(pc),a0 move.w #CURSOROFF,d0 CALL OpenCon move.l d0,pConHandle ;--- Place the cursor move.l pConHandle(pc),a0 moveq #30,d0 moveq #12,d1 CALL GotoXY ;--- Write a text moveq #-1,d0 move.l pConHandle(pc),a0 lea sHello(pc),a1 CALL DisplayRaw ;--- Wait for keypressed move.l pConHandle(pc),a0 move.l #ACCF_WAIT!ACCF_ECHO!ACCF_ERASE,d0 lea dKeypress(pc),a1 CALL Accept ;--- Close ConWindow move.l pConBase(pc),a6 move.l pConHandle(pc),a0 CALL CloseCon ;--- Close Con Library move.l (_SysBase).w,a6 move.l pConBase(pc),a1 CALL CloseLibrary moveq #0,d0 rts ;================================================================== ;=== ;=== DATA AREA ;=== ;================================================================== DataArea: ;--- Variable ----------------------------------------------------- pConBase dc.l 0 pConHandle dc.l 0 ;--- Text --------------------------------------------------------- sConName dc.b 'con.library',0 sWindowTitle dc.b '- Press any key -',0 sHello dc.b 'Hello Amiga dudes.',0 EVEN ;--- Table -------------------------------------------------------- cMyIDCMP SET CLOSEWINDOW cMyFlags SET WINDOWSIZING!WINDOWDRAG!WINDOWDEPTH!WINDOWCLOSE cMyFlags SET cMyFlags!SMART_REFRESH!ACTIVATE!NOCAREREFRESH ;--- Intuition NewWindow Structure dMyWindow: dc.w 0,11 ;LeftEdge, TopEdge dc.w 640,245 ;Width, Height dc.b 0,1 ;DetailPen, BlockPen dc.l cMyIDCMP ;IDCMPFlags dc.l cMyFlags ;Flags dc.l 0,0 ;FirstGadget, CheckMark dc.l sWindowTitle ;Title dc.l 0 ;Screen dc.l 0 ;BitMap dc.w 30,30 ;MinWidth, MinHeight dc.w -1,-1 ;MaxWidth, MaxHeight dc.w WBENCHSCREEN ;Type ;--- AcceptStruct dKeypress: dc.w -1,-1 ;XStart,YStart dc.w -1,-1,-1 ;Styles,FgCol,BgCol dc.l CLOSEWINDOW ;ExitFlags dcb.l 7,0 ;Message stuff dc.b 0,0 ;Char,Pad001 dcb.b CHARDEFSIZE,-1 ;ValidTable dcb.b CHARDEFSIZE,-1 ;ExitTable dcb.l 4,0 ;Reserved