LINE  ADDR OP OPER	LABEL	OPCODE	OPERAND	COMMENT
----- ---- -- ----	-----	------	-------	---------------------------
00001		NAME	"Hello Can I Help You ?"
00002	;
00003	; EPA Micro 68
00004	; Electronic Product Associates, Inc.
00005	; San Diego, California 92110
00006	;
00007	; This program will display ".....HELLO CAN I HELP YOU ?"
00008	; across the led displays in a flowing, ticker-tape fashion.
00009	;
00010	;       OPT     SHORT   ; Set for short listing
00011	;
00012	; S19 START ADDRESS, END ADDRESS, AND JUMP ADDRESS.
00013		OPT	S0_HDR,S1_STA=$0000,S1_END=$005C,S9_JMP=$0029	
00014	;
00015	; INTEL HEX START ADDRESS, END ADDRESS.
00016		OPT	IHEX_STA=$0000,IHEX_END=$005C	
00017	;
00018	; USER STORAGE
00019 0034		ORG	$0034
00020 0034 0002	STOREPTR	RMB	2	; Store Pointer
00021 0036 0002	FETCHPTR	RMB	2	; Fetch Pointer
00022	;
00023 0000		ORG	$0000
00024	; "......HELLO    CAN   I   HELP   YOU ?    " Message
00025	;
00026	;        Six periods
00027 0000 FE	MSG	FCB	$FE,$FE,$FE,$FE,$FE,$FE
00028 0001 FE
00029 0002 FE
00030 0003 FE
00031 0004 FE
00032 0005 FE
00033	;        HELLO
00034 0006 91		FCB	$91,$61,$E3,$E3,$03
00035 0007 61
00036 0008 E3
00037 0009 E3
00038 000A 03
00039	;        Four Spaces
00040 000B FF		FCB	$FF,$FF,$FF,$FF
00041 000C FF
00042 000D FF
00043 000E FF
00044	;        CAN
00045 000F 63		FCB	$63,$11,$13
00046 0010 11
00047 0011 13
00048	;        Three Spaces
00049 0012 FF		FCB	$FF,$FF,$FF
00050 0013 FF
00051 0014 FF
00052	;        I
00053 0015 9F		FCB	$9F
00054	;        Three Spaces
00055 0016 FF		FCB	$FF,$FF,$FF
00056 0017 FF
00057 0018 FF
00058	;        HELP
00059 0019 91		FCB	$91,$61,$E3,$31
00060 001A 61
00061 001B E3
00062 001C 31
00063	;        Three Spaces
00064 001D FF		FCB	$FF,$FF,$FF
00065 001E FF
00066 001F FF
00067	;        YOU
00068 0020 89		FCB	$89,$03,$83

LINE  ADDR OP OPER	LABEL	OPCODE	OPERAND	COMMENT
----- ---- -- ----	-----	------	------------	---------------------------
00069 0021 03
00070 0022 83
00071	;        One Space
00072 0023 FF		FCB	$FF
00073	;        ?
00074 0024 35		FCB	$35
00075	;        Four Spaces
00076 0025 FF		FCB	$FF,$FF,$FF,$FF
00077 0026 FF
00078 0027 FF
00079 0028 FF
00080	;
00081 0029 7F 0034	PGMTOP	CLR	STOREPTR	; Clear location $0034
00082 002C CE 0000	NOTEND	LDX	#MSG	; Load index register with "0000"
00083 002F 86 78		LDAA	#$78	; Load A register with "78"
00084 0031 97 36		STAA	FETCHPTR	; Store contents of A register at location
00085	;                                0036
00086 0033 A6 00	LOOP	LDAA	$00,X	; Load A register (indexed)
00087	;                                offset will change in execution
00088 0035 97 00		STAA	#$00	; Store contents of A at location
00089	;                                this value will change in execution
00090 0037 7C 0034		INC	STOREPTR	; Increment locations 0034 and 0036
00091	;                                this will increment the fetch pointer
00092 003A 7C 0036		INC	FETCHPTR	; and the store pointer
00093 003D D6 36		LDAB	FETCHPTR	; Load B register with current value of
00094	;                                location 0036
00095 003F C1 7E		CMPB	#$7E	; Compare contents of register with "7E"
00096 0041 26 F0		BNE	LOOP	; Branch if contents of B register != 7E
00097 0043 86 F1		LDAA	#$F1	; Store "F1" at location 0036
00098 0045 97 36		STAA	FETCHPTR	; Location 0036 is temporarily
00099	;                                being used as a counter
00100 0047 BD 0000	LOOP2	JSR	DISPLAY	; Call the display subroutine from
00101	;                                the keyboard control program
00102 004A 7C 0036		INC	FETCHPTR	; Increment location 0036 (counter)
00103 004D 26 F8		BNE	LOOP2	; Loop until counter overflows
00104	;                                to zero (scan timing)
00105 004F 96 34		LDAA	STOREPTR	; Load A register with contents
00106	;                                of location 0034
00107 0051 80 05		SUBA	#$05	; Subtract 5 from contents in A
00108 0053 97 34		STAA	STOREPTR	; Restore contents of A in location 0034
00109 0055 81 24		CMPA	#$24	; If current value of location 0034
00110	;                                = 24 then end of message list
00111 0057 26 D3		BNE	NOTEND	; Branch back to location 002C if
00112	;                                not end of message list
00113 0059 20 CE		BRA	PGMTOP	; Branch back to top of program
00114	;                                (0029) if end of message list
00115 0029		END	PGMTOP
00116	
00117	

Total Errors: 0

Symbol Table Sorted Alphabetically

Symbol - Value	Symbol - Value	Symbol - Value	
FETCHPTR - $0036	MSG - $0000	STOREPTR - $0034	
LOOP - $0033	NOTEND - $002C	 - $0000	
LOOP2 - $0047	PGMTOP - $0029	 - $0000	

S01B00000048454C4C4F2043414E20492048454C5020594F55203F0090
S1230000FEFEFEFEFEFE9161E3E303FFFFFFFF631113FFFFFF9FFFFFFF9161E331FFFFFF0E
S1230020890383FF35FFFFFFFF7F0034CE000086789736A60097007C00347C0036D636C1C5
S11F00407E26F086F19736BD00007C003626F8963480059734812426D320CE0095
S9030029D3

Intel Hex Records - Addresses $0000 to $005C

:20000000FEFEFEFEFEFE9161E3E303FFFFFFFF631113FFFFFF9FFFFFFF9161E331FFFFFF12
:20002000890383FF35FFFFFFFF7F0034CE000086789736A60097007C00347C0036D636C1C9
:1C0040007E26F086F19736BD00007C003626F8963480059734812426D320CE0099
:00000001FF