Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.sys.apple2.programmer > #2124
| Newsgroups | comp.sys.apple2.programmer |
|---|---|
| Date | 2016-01-15 14:45 -0800 |
| Message-ID | <2869c913-a2ae-4de7-af68-b5db1cd8f096@googlegroups.com> (permalink) |
| Subject | HGR Byte Inspector |
| From | michael.pohoreski@gmail.com |
; HGR Byte Inspector
; Michael Pohoreski
; Version 1 - Barebones but it works
;
; Keys:
;
; ESC to Quit, else use arrow keys to move the cursor
; <-
; ->
; Up Arrow
; Down Arrow
;
; Can resume with 910G
GBASL EQU $26
GBASH EQU $27
val EQU $F0
col EQU $F1
row EQU $E2 ; used by Applesoft HGR.row
HGRPAGE EQU $E6 ; used by Applesoft HGR.page
CH EQU $24 ; text cursor column
CV EQU $25 ; text cursor row
HPOSN EQU $F411 ; A=row, Y,X=col update GBASL GBASH
VTAB EQU $FC22 ; A=row
HOME EQU $FC58
COUT EQU $FDED
PR=HEX EQU $FDD3
PRBYTE EQU $FDDA
KEYBOARD EQU $C000
KEYSTROBE EQU $C010
ORG $8F4
08F4: HgrByteInspector
08F4:20 58 FC JSR HOME
08F7:2C 50 C0 BIT $C050
08FA:2C 53 C0 BIT $C053
08FD:2C 57 C0 BIT $C057
0900:A9 00 LDA #0
0902:85 F0 STA val
0904:85 F1 STA col
0906:85 E2 STA row
0908:85 26 STA GBASL
090A:A9 20 LDA #20
090C:85 27 STA GBASH
090E:85 E6 STA HGRPAGE
0910:A0 00 Cursor LDY #0 ; Update pointer to sceeen
0912:A2 00 LDX #0
0914:A5 E2 LDA row
0916:20 11 F4 JSR HPOSN ; A=row, Y,X=col X->E0 Y->E1
0919:A4 F1 GetKey LDY col
091B:B1 26 LDA (GBASL),Y
091D:85 F0 STA VAL
091F:20 65 09 JSR XorByte
0922:AD 00 C0 LDA KEYBOARD
0925:10 F2 BPL GetKey
0927:8D 10 C0 STA KEYSTROBE
092A:A2 04 LDX #4
092C:DD 5A 09 FindKey CMP Keys, X
092F:F0 05 BEQ GotKey
0931:CA DEX
0932:10 F8 BPL FindKey
0934:30 DA BadKey BMI Cursor
0936:A9 09 GotKey LDA #>HgrByteInspector
0938:48 PHA
0939:BD 5F 09 LDA Func, X
093C:48 PHA
093D:60 Done RTS
093E:C6 F1 MoveL DEC col
0940:10 CE BPL Cursor
0942:E6 F1 MoveR INC col
0944:A5 F1 LDA col
0946:C9 28 CMP #40
0948:B0 F4 BCS MoveL
094A:90 C4 BCC Cursor
094C:C6 E2 MoveU DEC row
094E:10 C0 BPL Cursor
0950:E6 E2 MoveD INC row
0952:A5 E2 LDA row
0954:C9 C0 CMP #192
0956:B0 F4 BCS MoveU
0958:90 B6 BCC Cursor
095A:88 Keys HEX 88 ; <-
095B:95 HEX 95 ; ->
095C:8B HEX 8B ; Up arrow
095D:8A HEX 8A ; Down arrow
095E:9B HEX 9B ; Esc
095F:3D Func HEX #<MoveL -1
0960:41 HEX #<MoveR -1
0961:4B HEX #<MoveU -1
0962:4F HEX #<MoveD -1
0963:3C HEX #<Done -1
0964:2C TogByte HEX 2C ; BIT $abs
0965:A5 F0 XorByte LDA val
0967:A4 F1 LDY col
0969:49 FF EOR #$FF
096B:91 26 STA (GBASL),Y)
096D:A9 00 Row14 LDA #0
096F:85 24 STA CH
0971:A9 14 LDA #20 ; $14 = 20
0973:85 25 STA CV
0975:20 22 FC JSR VTAB
0978: PrintStatus
0978:A9 D8 LDA "X" ;X=## Y=## $=####:##
097A:20 ED FD JSR COUT
097D:A5 F1 LDA col
097F:20 D3 FD JSR PR=HEX
0982:A9 A0 LDA " "
0984:20 ED FD JSR COUT
0987:A9 D9 LDA "Y"
0989:20 ED FD JSR COUT
098C:A5 E2 LDA row
098E:20 D3 FD JSR PR=HEX
0991:A9 A0 LDA " "
0993:20 ED FD JSR COUT
0996:A9 A4 LDA "$"
0998:20 ED FD JSR COUT
099B:A5 27 LDA GBASH
099D:20 D3 FD JSR PR=HEX
09A0:A5 26 LDA GBASL
09A2:20 DA FD JSR PRBYTE
09A5:A9 BA LDA ":"
09A7:20 ED FD JSR COUT
09AA:A5 F0 LDA val
09AC:20 DA FD JSR PRBYTE
09AF:A5 F0 LDA val
09B1:A4 F1 LDY col ; need to restore byte to org. value on exit
09B3:91 26 STA (GBASL),Y
09B5:60 RTS
Version 1
8F4:20 58 FC 2C
8F8:50 C0 2C 53 C0 2C 57 C0
900:A9 00 85 F0 85 F1 85 E2
908:85 26 A9 20 85 27 85 E6
910:A0 00 A2 00 A5 E2 20 11
918:F4 A4 F1 B1 26 85 F0 20
920:65 09 AD 00 C0 10 F2 8D
928:10 C0 A2 04 DD 5A 09 F0
930:05 CA 10 F8 30 DA A9 09
938:48 BD 5F 09 48 60 C6 F1
940:10 CE E6 F1 A5 F1 C9 28
948:B0 F4 90 C4 C6 E2 10 C0
950:E6 E2 A5 E2 C9 C0 B0 F4
958:90 B6 88 95 8B 8A 9B 3D
960:41 4B 4F 3C 2C A5 F0 A4
968:F1 49 FF 91 26 A9 00 85
970:24 A9 14 85 25 20 22 FC
978:A9 D8 20 ED FD A5 F1 20
980:D3 FD A9 A0 20 ED FD A9
988:D9 20 ED FD A5 E2 20 D3
990:FD A9 A0 20 ED FD A9 A4
998:20 ED FD A5 27 20 D3 FD
9A0:A5 26 20 DA FD A9 BA 20
9A8:ED FD A5 F0 20 DA FD A5
9B0:F0 A4 F1 91 26 60
Hand-assembled Woz-style !
160 *************************************************
170 * *
180 * "That BASIC, which we shipped with the first *
190 * Apple II's, was never assembled -- ever. *
200 * There was one handwritten copy, all *
210 * handwritten, all hand assembled." *
220 * *
230 * Steve Wozniak *
240 * Call-A.P.P.L.E., October 1986 *
250 * *
260 *************************************************
Back to comp.sys.apple2.programmer | Previous | Next — Next in thread | Find similar
HGR Byte Inspector michael.pohoreski@gmail.com - 2016-01-15 14:45 -0800
Re: HGR Byte Inspector Mark Lemmert <mark.lemmert@gmail.com> - 2016-02-18 10:01 -0800
Re: HGR Byte Inspector Michael Pohoreski <michael.pohoreski@gmail.com> - 2016-02-21 20:55 -0800
Re: HGR Byte Inspector Michael Pohoreski <michael.pohoreski@gmail.com> - 2016-02-18 13:21 -0800
csiph-web