QV←UTILITY
FILE INFORMATION
FILENAME(S): QV←UTILITY
FILE TYPE(S): USR
FILE SIZE: 3K
FIRST SEEN: 2025-10-20 14:31:15
APPEARS ON: 1 disk(s)
FILE HASH
4c3b7c1c7252ea216617f144716e1f8685c90d766b79dbd6beb4ae41df84dd28
FOUND ON DISKS (1 DISKS)
| DISK TITLE | FILENAME | FILE TYPE | COLLECTION | TRACK | SECTOR | ACTIONS |
|---|---|---|---|---|---|---|
| C | QV←UTILITY | USR | Treasure Chest - Klaus Der Suhler | 24 | 12 | DOWNLOAD FILE |
FILE CONTENT & ANALYSIS
00000000: 3B 20 55 54 49 4C 49 54 59 27 73 20 66 6F 72 20 |; UTILITY's for | 00000010: 51 75 69 63 6B 56 69 65 77 00 3B 2D 2D 2D 2D 2D |QuickView.;-----| 00000020: 2A 00 50 52 54 4F 55 54 00 20 43 4D 50 20 23 31 |*.PRTOUT. CMP #1| 00000030: 33 00 20 42 45 51 20 40 45 4E 4C 49 4E 00 20 43 |3. BEQ @ENLIN. C| 00000040: 4D 50 20 23 33 32 00 20 42 43 43 20 40 4E 4F 50 |MP #32. BCC @NOP| 00000050: 52 54 00 20 43 4D 50 20 23 31 32 39 00 20 42 43 |RT. CMP #129. BC| 00000060: 53 20 40 4E 4F 50 52 54 00 20 4A 53 52 20 50 75 |S @NOPRT. JSR Pu| 00000070: 74 43 68 61 72 00 20 6A 73 72 20 53 45 54 55 50 |tChar. jsr SETUP| 00000080: 42 00 40 4E 4F 50 52 54 00 20 52 54 53 00 3B 00 |B.@NOPRT. RTS.;.| 00000090: 40 45 4E 4C 49 4E 00 20 6A 73 72 20 45 78 4C 42 |@ENLIN. jsr ExLB| 000000A0: 00 20 4C 44 41 20 59 50 4F 53 31 00 20 43 4C 43 |. LDA YPOS1. CLC| 000000B0: 00 20 41 44 43 20 23 31 30 00 20 53 54 41 20 59 |. ADC #10. STA Y| 000000C0: 50 4F 53 31 00 40 45 4E 4C 00 20 43 4D 50 20 23 |POS1.@ENL. CMP #| 000000D0: 31 38 33 2D 38 2D 34 00 20 42 43 43 20 40 41 5A |183-8-4. BCC @AZ| 000000E0: 00 20 6C 64 61 20 23 31 30 3B 20 74 68 69 73 20 |. lda #10; this | 000000F0: 6D 69 67 68 74 20 63 68 61 6E 67 65 00 20 6C 64 |might change. ld| 00000100: 78 20 23 30 00 20 6C 64 79 20 23 31 38 33 2D 38 |x #0. ldy #183-8| 00000110: 2B 33 2D 34 00 20 6A 73 72 20 4D 6F 76 65 53 63 |+3-4. jsr MoveSc| 00000120: 72 65 65 6E 00 3B 20 4A 53 52 20 69 5F 4D 6F 76 |reen.; JSR i_Mov| 00000130: 65 44 61 74 61 00 3B 2E 57 4F 52 44 20 24 41 30 |eData.;.WORD $A0| 00000140: 30 30 2B 33 32 30 00 3B 2E 57 4F 52 44 20 24 41 |00+320.;.WORD $A| 00000150: 30 30 30 00 3B 2E 57 4F 52 44 20 38 30 30 30 2D |000.;.WORD 8000-| 00000160: 36 34 30 2D 33 32 30 00 20 4C 44 41 20 59 50 4F |640-320. LDA YPO| 00000170: 53 31 00 20 53 45 43 00 20 53 42 43 20 23 31 30 |S1. SEC. SBC #10| 00000180: 00 20 53 54 41 20 59 50 4F 53 31 00 20 62 72 61 |. STA YPOS1. bra| 00000190: 6E 63 68 20 40 45 4E 4C 00 40 41 5A 00 20 4C 44 |nch @ENL.@AZ. LD| 000001A0: 41 20 23 30 00 20 53 54 41 20 58 50 4F 53 31 00 |A #0. STA XPOS1.| 000001B0: 20 53 54 41 20 58 50 4F 53 31 2B 31 00 20 6A 73 | STA XPOS1+1. js| 000001C0: 72 20 45 78 4C 42 61 00 20 4A 53 52 20 53 45 54 |r ExLBa. JSR SET| 000001D0: 55 50 41 00 20 52 54 53 00 00 59 50 4F 53 31 20 |UPA. RTS..YPOS1 | 000001E0: 2E 42 59 54 45 20 31 30 00 58 50 4F 53 31 20 2E |.BYTE 10.XPOS1 .| 000001F0: 57 6F 72 64 20 30 00 00 53 45 54 55 50 41 00 20 |Word 0..SETUPA. | 00000200: 4C 44 58 20 59 50 4F 53 31 00 20 53 54 58 20 52 |LDX YPOS1. STX R| 00000210: 31 2B 31 00 20 4C 44 58 20 58 50 4F 53 31 00 20 |1+1. LDX XPOS1. | 00000220: 53 54 58 20 52 31 31 00 20 4C 44 58 20 58 50 4F |STX R11. LDX XPO| 00000230: 53 31 2B 31 00 20 53 54 58 20 52 31 31 2B 31 00 |S1+1. STX R11+1.| 00000240: 20 52 54 53 00 3B 00 53 45 54 55 50 42 00 20 4C | RTS.;.SETUPB. L| 00000250: 44 58 20 52 31 2B 31 00 20 53 54 58 20 59 50 4F |DX R1+1. STX YPO| 00000260: 53 31 00 20 4C 44 58 20 52 31 31 00 20 53 54 58 |S1. LDX R11. STX| 00000270: 20 58 50 4F 53 31 00 20 4C 44 58 20 52 31 31 2B | XPOS1. LDX R11+| 00000280: 31 00 20 53 54 58 20 58 50 4F 53 31 2B 31 00 20 |1. STX XPOS1+1. | 00000290: 52 54 53 00 3B 2D 2D 2D 2D 2D 00 43 76 43 72 64 |RTS.;-----.CvCrd| 000002A0: 3B 20 63 6F 6E 76 65 72 74 20 63 61 72 64 20 62 |; convert card b| 000002B0: 69 74 20 74 6F 20 62 79 74 65 2E 00 3B 20 65 6E |it to byte..; en| 000002C0: 74 72 79 20 77 69 74 68 20 41 20 68 6F 6C 64 69 |try with A holdi| 000002D0: 6E 67 20 62 69 74 20 76 61 6C 75 65 00 20 73 74 |ng bit value. st| 000002E0: 61 20 43 76 43 68 61 72 00 43 76 43 72 64 31 00 |a CvChar.CvCrd1.| 000002F0: 20 6C 64 61 20 23 32 37 00 20 6A 73 72 20 50 75 | lda #27. jsr Pu| 00000300: 74 43 68 61 72 00 20 6C 64 61 20 43 76 43 68 61 |tChar. lda CvCha| 00000310: 72 00 20 62 65 71 20 40 6F 34 00 20 6C 64 61 20 |r. beq @o4. lda | 00000320: 43 76 43 68 61 72 00 20 41 4E 44 20 23 31 32 38 |CvChar. AND #128| 00000330: 3B 20 73 65 74 5F 75 6E 64 65 72 6C 69 6E 65 00 |; set_underline.| 00000340: 20 62 65 71 20 20 40 6F 31 00 20 6C 64 61 20 23 | beq @o1. lda #| 00000350: 31 34 00 20 6A 73 72 20 50 75 74 43 68 61 72 00 |14. jsr PutChar.| 00000360: 40 6F 31 00 20 6C 64 61 20 43 76 43 68 61 72 00 |@o1. lda CvChar.| 00000370: 20 41 4E 44 20 23 36 34 3B 73 65 74 5F 62 6F 6C | AND #64;set_bol| 00000380: 64 00 20 62 65 71 20 40 6F 32 00 20 6C 64 61 20 |d. beq @o2. lda | 00000390: 23 32 34 00 20 6A 73 72 20 50 75 74 43 68 61 72 |#24. jsr PutChar| 000003A0: 00 40 6F 32 00 20 6C 64 61 20 43 76 43 68 61 72 |.@o2. lda CvChar| 000003B0: 00 20 41 4E 44 20 23 31 36 3B 20 49 74 61 6C 69 |. AND #16; Itali| 000003C0: 63 27 73 00 20 62 65 71 20 40 6F 33 00 20 6C 64 |c's. beq @o3. ld| 000003D0: 61 20 23 32 35 00 20 6A 73 72 20 50 75 74 43 68 |a #25. jsr PutCh| 000003E0: 61 72 00 40 6F 33 00 20 6C 64 61 20 43 76 43 68 |ar.@o3. lda CvCh| 000003F0: 61 72 00 20 41 4E 44 20 23 38 3B 20 4F 75 74 6C |ar. AND #8; Outl| 00000400: 69 6E 65 00 20 62 65 71 20 40 6F 34 00 20 6C 64 |ine. beq @o4. ld| 00000410: 61 20 23 32 36 00 20 6A 73 72 20 50 75 74 43 68 |a #26. jsr PutCh| 00000420: 61 72 00 40 6F 34 00 20 52 54 53 00 43 76 43 68 |ar.@o4. RTS.CvCh| 00000430: 61 72 20 2E 42 79 74 65 20 30 00 00 45 78 4C 42 |ar .Byte 0..ExLB| 00000440: 00 20 4C 44 41 20 23 31 00 20 53 54 41 20 52 34 |. LDA #1. STA R4| 00000450: 2B 31 00 20 4C 44 41 20 23 36 33 00 20 53 54 41 |+1. LDA #63. STA| 00000460: 20 52 34 00 20 4C 44 41 20 52 31 2B 31 00 20 53 | R4. LDA R1+1. S| 00000470: 45 43 00 20 53 42 43 20 23 37 00 20 53 54 41 20 |EC. SBC #7. STA | 00000480: 52 32 00 20 43 4C 43 00 20 41 44 43 20 23 31 30 |R2. CLC. ADC #10| 00000490: 00 20 53 54 41 20 52 32 2B 31 00 20 4C 44 41 20 |. STA R2+1. LDA | 000004A0: 52 31 31 00 20 53 54 41 20 52 33 00 20 4C 44 41 |R11. STA R3. LDA| 000004B0: 20 52 31 31 2B 31 00 20 42 45 51 20 40 4A 32 00 | R11+1. BEQ @J2.| 000004C0: 20 4C 44 41 20 52 33 00 20 43 4D 50 20 23 36 34 | LDA R3. CMP #64| 000004D0: 00 20 42 43 53 20 40 4A 31 00 20 4C 44 41 20 52 |. BCS @J1. LDA R| 000004E0: 31 31 2B 31 00 40 4A 32 00 20 53 54 41 20 52 33 |11+1.@J2. STA R3| 000004F0: 2B 31 00 20 4A 53 52 20 52 65 63 74 61 6E 67 6C |+1. JSR Rectangl| 00000500: 65 00 40 4A 31 00 20 52 54 53 00 00 45 78 4C 42 |e.@J1. RTS..ExLB| 00000510: 61 00 20 4C 44 41 20 23 31 00 20 53 54 41 20 52 |a. LDA #1. STA R| 00000520: 34 2B 31 00 20 4C 44 41 20 23 36 33 00 20 53 54 |4+1. LDA #63. ST| 00000530: 41 20 52 34 00 20 4C 44 41 20 59 50 4F 53 31 00 |A R4. LDA YPOS1.| 00000540: 20 63 6C 63 00 20 61 64 63 20 23 33 00 20 53 54 | clc. adc #3. ST| 00000550: 41 20 52 32 00 20 6C 64 61 20 23 31 38 33 00 20 |A R2. lda #183. | 00000560: 53 54 41 20 52 32 2B 31 00 20 4C 44 41 20 23 30 |STA R2+1. LDA #0| 00000570: 00 20 53 54 41 20 52 33 00 20 53 54 41 20 52 33 |. STA R3. STA R3| 00000580: 2B 31 00 20 4A 53 52 20 52 65 63 74 61 6E 67 6C |+1. JSR Rectangl| 00000590: 65 00 20 52 54 53 00 3B 2D 2D 2D 2D 2D 00 50 61 |e. RTS.;-----.Pa| 000005A0: 75 73 65 00 20 6A 73 72 20 53 45 54 55 50 42 00 |use. jsr SETUPB.| 000005B0: 20 6C 64 61 20 50 61 75 73 65 42 79 74 65 00 20 | lda PauseByte. | 000005C0: 45 4F 52 20 23 31 00 20 73 74 61 20 50 61 75 73 |EOR #1. sta Paus| 000005D0: 65 42 79 74 65 00 50 61 75 73 65 52 6F 75 74 69 |eByte.PauseRouti| 000005E0: 6E 65 00 00 20 6C 64 61 20 23 31 38 34 00 20 73 |ne.. lda #184. s| 000005F0: 74 61 20 52 32 00 20 6C 64 61 20 23 31 39 39 00 |ta R2. lda #199.| 00000600: 20 73 74 61 20 52 32 2B 31 00 20 6C 64 61 20 23 | sta R2+1. lda #| 00000610: 31 37 2A 38 00 20 73 74 61 20 52 33 00 20 6C 64 |17*8. sta R3. ld| 00000620: 61 20 23 32 33 2A 38 00 20 73 74 61 20 52 34 00 |a #23*8. sta R4.| 00000630: 20 6C 64 61 20 23 30 00 20 73 74 61 20 52 33 2B | lda #0. sta R3+| 00000640: 31 00 20 73 74 61 20 52 34 2B 31 00 20 6A 73 72 |1. sta R4+1. jsr| 00000650: 20 49 6E 76 65 72 74 52 65 63 74 61 6E 67 6C 65 | InvertRectangle| 00000660: 00 20 6C 64 61 20 23 31 32 38 00 20 73 74 61 20 |. lda #128. sta | 00000670: 24 38 35 30 35 00 20 6A 73 72 20 53 45 54 55 50 |$8505. jsr SETUP| 00000680: 41 00 20 52 54 53 00 3B 2D 2D 2D 2D 00 4F 50 56 |A. RTS.;----.OPV| 00000690: 00 20 50 48 41 00 20 6C 64 61 20 24 38 35 30 35 |. PHA. lda $8505| 000006A0: 00 20 42 4D 49 20 40 50 42 33 00 20 74 78 61 00 |. BMI @PB3. txa.| 000006B0: 20 50 48 41 00 20 74 79 61 00 20 50 48 41 00 20 | PHA. tya. PHA. | 000006C0: 6A 73 72 20 53 45 54 55 50 42 00 20 6C 64 61 20 |jsr SETUPB. lda | 000006D0: 23 31 38 34 00 20 73 74 61 20 52 32 00 20 6C 64 |#184. sta R2. ld| 000006E0: 61 20 23 31 39 39 00 20 73 74 61 20 52 32 2B 31 |a #199. sta R2+1| 000006F0: 00 20 6C 64 61 20 23 31 37 2A 38 00 20 73 74 61 |. lda #17*8. sta| 00000700: 20 52 33 00 20 6C 64 61 20 23 32 33 2A 38 00 20 | R3. lda #23*8. | 00000710: 73 74 61 20 52 34 00 20 6C 64 61 20 23 30 00 20 |sta R4. lda #0. | 00000720: 73 74 61 20 52 33 2B 31 00 20 73 74 61 20 52 34 |sta R3+1. sta R4| 00000730: 2B 31 00 20 6A 73 72 20 49 73 4D 73 65 49 6E 52 |+1. jsr IsMseInR| 00000740: 65 67 69 6F 6E 00 20 54 41 58 00 20 62 65 71 20 |egion. TAX. beq | 00000750: 40 50 42 32 00 20 6A 73 72 20 50 61 75 73 65 00 |@PB2. jsr Pause.| 00000760: 40 50 42 32 00 20 6C 64 61 20 23 31 38 34 00 20 |@PB2. lda #184. | 00000770: 73 74 61 20 52 32 00 20 6C 64 61 20 23 31 39 39 |sta R2. lda #199| 00000780: 00 20 73 74 61 20 52 32 2B 31 00 20 6C 64 61 20 |. sta R2+1. lda | 00000790: 23 33 34 2A 38 00 20 73 74 61 20 52 33 00 20 6C |#34*8. sta R3. l| 000007A0: 64 61 20 23 33 39 2A 38 2B 37 00 20 73 74 61 20 |da #39*8+7. sta | 000007B0: 52 34 00 20 6C 64 61 20 23 31 00 20 73 74 61 20 |R4. lda #1. sta | 000007C0: 52 33 2B 31 00 20 73 74 61 20 52 34 2B 31 00 20 |R3+1. sta R4+1. | 000007D0: 6A 73 72 20 49 73 4D 73 65 49 6E 52 65 67 69 6F |jsr IsMseInRegio| 000007E0: 6E 00 20 54 41 58 00 20 62 65 71 20 40 50 42 33 |n. TAX. beq @PB3| 000007F0: 61 00 20 6A 73 72 20 45 78 69 74 4C 69 73 74 00 |a. jsr ExitList.| 00000800: 40 50 42 33 61 00 20 6A 73 72 20 53 45 54 55 50 |@PB3a. jsr SETUP| 00000810: 41 00 20 50 4C 41 00 20 74 61 79 00 20 50 4C 41 |A. PLA. tay. PLA| 00000820: 00 20 74 61 78 00 40 50 42 33 00 20 50 4C 41 00 |. tax.@PB3. PLA.| 00000830: 20 52 54 53 00 00 50 61 75 73 65 42 79 74 65 20 | RTS..PauseByte | 00000840: 2E 42 79 74 65 20 30 00 45 78 69 74 42 79 74 65 |.Byte 0.ExitByte| 00000850: 20 2E 42 79 74 65 20 30 00 3B 3D 3D 3D 3D 00 45 | .Byte 0.;====.E| 00000860: 78 69 74 4C 69 73 74 00 20 6C 64 61 20 23 31 00 |xitList. lda #1.| 00000870: 20 73 74 61 20 45 78 69 74 42 79 74 65 00 00 20 | sta ExitByte.. | 00000880: 6C 64 61 20 23 31 38 34 00 20 73 74 61 20 52 32 |lda #184. sta R2| 00000890: 00 20 6C 64 61 20 23 31 39 39 00 20 73 74 61 20 |. lda #199. sta | 000008A0: 52 32 2B 31 00 20 6C 64 61 20 23 33 34 2A 38 00 |R2+1. lda #34*8.| 000008B0: 20 73 74 61 20 52 33 00 20 6C 64 61 20 23 33 39 | sta R3. lda #39| 000008C0: 2A 38 2B 37 00 20 73 74 61 20 52 34 00 20 6C 64 |*8+7. sta R4. ld| 000008D0: 61 20 23 31 00 20 73 74 61 20 52 33 2B 31 00 20 |a #1. sta R3+1. | 000008E0: 73 74 61 20 52 34 2B 31 00 20 6A 73 72 20 49 6E |sta R4+1. jsr In| 000008F0: 76 65 72 74 52 65 63 74 61 6E 67 6C 65 00 20 6C |vertRectangle. l| 00000900: 64 61 20 23 31 32 38 00 20 73 74 61 20 24 38 35 |da #128. sta $85| 00000910: 30 35 00 3B 00 3B 20 6C 6F 6F 70 20 74 6F 20 77 |05.;.; loop to w| 00000920: 61 73 74 65 20 74 69 6D 65 00 20 6C 64 61 20 23 |aste time. lda #| 00000930: 30 00 20 73 74 61 20 59 5F 52 65 67 00 40 59 52 |0. sta Y_Reg.@YR| 00000940: 5F 6C 6F 6F 70 00 20 6C 64 61 20 23 30 00 20 73 |_loop. lda #0. s| 00000950: 74 61 20 58 5F 52 65 67 00 40 58 52 5F 6C 6F 6F |ta X_Reg.@XR_loo| 00000960: 70 00 20 64 65 63 20 58 5F 52 65 67 00 20 62 6E |p. dec X_Reg. bn| 00000970: 65 20 40 58 52 5F 6C 6F 6F 70 00 20 64 65 63 20 |e @XR_loop. dec | 00000980: 59 5F 52 65 67 00 20 62 6E 65 20 40 59 52 5F 6C |Y_Reg. bne @YR_l| 00000990: 6F 6F 70 00 20 6A 73 72 20 49 6E 76 65 72 74 52 |oop. jsr InvertR| 000009A0: 65 63 74 61 6E 67 6C 65 00 20 6A 73 72 20 53 45 |ectangle. jsr SE| 000009B0: 54 55 50 41 00 20 52 54 53 00 59 5F 52 65 67 20 |TUPA. RTS.Y_Reg | 000009C0: 2E 42 79 74 65 20 30 00 58 5F 52 65 67 20 2E 42 |.Byte 0.X_Reg .B| 000009D0: 79 74 65 20 30 00 3B 2D 2D 2D 00 4D 6F 76 65 53 |yte 0.;---.MoveS| 000009E0: 63 72 65 65 6E 00 3B 20 44 45 53 54 20 73 63 72 |creen.; DEST scr| 000009F0: 65 65 6E 20 70 6F 73 69 74 69 6F 6E 20 74 6F 20 |een position to | 00000A00: 6D 6F 76 65 20 74 6F 00 3B 20 53 4F 55 52 43 45 |move to.; SOURCE| 00000A10: 20 73 63 72 65 65 6E 20 70 6F 73 69 74 69 6F 6E | screen position| 00000A20: 20 74 6F 20 6D 6F 76 65 20 66 72 6F 6D 00 3B 20 | to move from.; | 00000A30: 4C 45 4E 47 54 48 20 66 69 72 73 74 20 70 6F 73 |LENGTH first pos| 00000A40: 69 74 69 6F 6E 20 74 6F 20 6D 6F 76 65 20 75 6E |ition to move un| 00000A50: 74 69 6C 20 28 6E 65 76 65 72 20 3E 20 31 39 39 |til (never > 199| 00000A60: 29 00 20 73 74 78 20 44 45 53 54 00 20 73 74 61 |). stx DEST. sta| 00000A70: 20 53 4F 55 52 43 45 00 20 53 54 59 20 4C 45 4E | SOURCE. STY LEN| 00000A80: 47 54 48 00 40 42 4C 50 33 00 20 6C 64 78 20 44 |GTH.@BLP3. ldx D| 00000A90: 45 53 54 00 20 6A 73 72 20 47 65 74 53 63 61 6E |EST. jsr GetScan| 00000AA0: 4C 69 6E 65 00 20 6D 6F 76 65 77 20 52 35 3A 44 |Line. movew R5:D| 00000AB0: 65 73 74 00 20 6C 64 78 20 53 4F 55 52 43 45 00 |est. ldx SOURCE.| 00000AC0: 20 6A 73 72 20 47 65 74 53 63 61 6E 4C 69 6E 65 | jsr GetScanLine| 00000AD0: 00 20 6D 6F 76 65 77 20 52 35 3A 53 6F 75 72 63 |. movew R5:Sourc| 00000AE0: 65 00 20 6C 64 79 20 23 30 00 40 42 4C 50 31 00 |e. ldy #0.@BLP1.| 00000AF0: 20 6C 64 61 20 28 53 6F 75 72 63 65 29 2C 59 00 | lda (Source),Y.| 00000B00: 20 73 74 61 20 28 44 65 73 74 29 2C 59 00 20 74 | sta (Dest),Y. t| 00000B10: 79 61 00 20 63 6C 63 00 20 61 64 63 20 23 38 00 |ya. clc. adc #8.| 00000B20: 20 74 61 79 00 20 62 6E 65 20 40 42 4C 50 31 00 | tay. bne @BLP1.| 00000B30: 20 69 6E 63 20 53 6F 75 72 63 65 2B 31 00 20 69 | inc Source+1. i| 00000B40: 6E 63 20 44 65 73 74 2B 31 00 40 42 4C 50 32 00 |nc Dest+1.@BLP2.| 00000B50: 20 6C 64 61 20 28 53 6F 75 72 63 65 29 2C 59 00 | lda (Source),Y.| 00000B60: 20 73 74 61 20 28 44 65 73 74 29 2C 59 00 20 74 | sta (Dest),Y. t| 00000B70: 79 61 00 20 63 6C 63 00 20 61 64 63 20 23 38 00 |ya. clc. adc #8.| 00000B80: 20 74 61 79 00 20 63 70 79 20 23 36 34 00 20 62 | tay. cpy #64. b| 00000B90: 63 63 20 40 42 4C 50 32 00 00 20 49 4E 43 20 44 |cc @BLP2.. INC D| 00000BA0: 45 53 54 00 20 49 4E 43 20 53 4F 55 52 43 45 00 |EST. INC SOURCE.| 00000BB0: 00 20 6C 64 61 20 53 4F 55 52 43 45 00 20 63 6D |. lda SOURCE. cm| 00000BC0: 70 20 4C 45 4E 47 54 48 00 20 62 63 63 20 40 42 |p LENGTH. bcc @B| 00000BD0: 4C 50 33 00 20 62 65 71 20 40 42 4C 50 33 00 52 |LP3. beq @BLP3.R| 00000BE0: 54 53 00 44 45 53 54 20 2E 42 79 74 65 20 30 00 |TS.DEST .Byte 0.| 00000BF0: 53 4F 55 52 43 45 20 2E 42 79 74 65 20 30 00 4C |SOURCE .Byte 0.L| 00000C00: 45 4E 47 54 48 20 2E 42 79 74 65 20 30 00 3B 3D |ENGTH .Byte 0.;=| 00000C10: 3D 3D 00 00 00 |==... |
; UTILITY'S FOR QUICKVIEW.;-----*.PRTOUT . CMP #13. BEQ @ENLIN. CMP #32. BCC @NOP RT. CMP #129. BCS @NOPRT. JSR PUTCHAR. J SR SETUPB.@NOPRT. RTS.;.@ENLIN. JSR EXLB . LDA YPOS1. CLC. ADC #10. STA YPOS1.@EN L. CMP #183-8-4. BCC @AZ. LDA #10; THIS MIGHT CHANGE. LDX #0. LDY #183-8+3-4. JS R MOVESCREEN.; JSR I_MOVEDATA.;.WORD $A0 00+320.;.WORD $A000.;.WORD 8000-640-320. LDA YPOS1. SEC. SBC #10. STA YPOS1. BRA NCH @ENL.@AZ. LDA #0. STA XPOS1. STA XPO S1+1. JSR EXLBA. JSR SETUPA. RTS..YPOS1 .BYTE 10.XPOS1 .WORD 0..SETUPA. LDX YPOS 1. STX R1+1. LDX XPOS1. STX R11. LDX XPO S1+1. STX R11+1. RTS.;.SETUPB. LDX R1+1. STX YPOS1. LDX R11. STX XPOS1. LDX R11+ 1. STX XPOS1+1. RTS.;-----.CVCRD; CONVER T CARD BIT TO BYTE..; ENTRY WITH A HOLDI NG BIT VALUE. STA CVCHAR.CVCRD1. LDA #27 . JSR PUTCHAR. LDA CVCHAR. BEQ @O4. LDA CVCHAR. AND #128; SET_UNDERLINE. BEQ @O 1. LDA #14. JSR PUTCHAR.@O1. LDA CVCHAR. AND #64;SET_BOLD. BEQ @O2. LDA #24. JSR PUTCHAR.@O2. LDA CVCHAR. AND #16; ITALI C'S. BEQ @O3. LDA #25. JSR PUTCHAR.@O3. LDA CVCHAR. AND #8; OUTLINE. BEQ @O4. LD A #26. JSR PUTCHAR.@O4. RTS.CVCHAR .BYTE 0..EXLB. LDA #1. STA R4+1. LDA #63. STA R4. LDA R1+1. SEC. SBC #7. STA R2. CLC. ADC #10. STA R2+1. LDA R11. STA R3. LDA R11+1. BEQ @J2. LDA R3. CMP #64. BCS @J 1. LDA R11+1.@J2. STA R3+1. JSR RECTANGL E.@J1. RTS..EXLBA. LDA #1. STA R4+1. LDA #63. STA R4. LDA YPOS1. CLC. ADC #3. ST A R2. LDA #183. STA R2+1. LDA #0. STA R3 . STA R3+1. JSR RECTANGLE. RTS.;-----.PA USE. JSR SETUPB. LDA PAUSEBYTE. EOR #1. STA PAUSEBYTE.PAUSEROUTINE.. LDA #184. S TA R2. LDA #199. STA R2+1. LDA #17*8. ST A R3. LDA #23*8. STA R4. LDA #0. STA R3+ 1. STA R4+1. JSR INVERTRECTANGLE. LDA #1 28. STA $8505. JSR SETUPA. RTS.;----.OPV . PHA. LDA $8505. BMI @PB3. TXA. PHA. TY A. PHA. JSR SETUPB. LDA #184. STA R2. LD A #199. STA R2+1. LDA #17*8. STA R3. LDA #23*8. STA R4. LDA #0. STA R3+1. STA R4 +1. JSR ISMSEINREGION. TAX. BEQ @PB2. JS R PAUSE.@PB2. LDA #184. STA R2. LDA #199 . STA R2+1. LDA #34*8. STA R3. LDA #39*8 +7. STA R4. LDA #1. STA R3+1. STA R4+1. JSR ISMSEINREGION. TAX. BEQ @PB3A. JSR E XITLIST.@PB3A. JSR SETUPA. PLA. TAY. PLA . TAX.@PB3. PLA. RTS..PAUSEBYTE .BYTE 0. EXITBYTE .BYTE 0.;====.EXITLIST. LDA #1. STA EXITBYTE.. LDA #184. STA R2. LDA #1 99. STA R2+1. LDA #34*8. STA R3. LDA #39 *8+7. STA R4. LDA #1. STA R3+1. STA R4+1 . JSR INVERTRECTANGLE. LDA #128. STA $85 05.;.; LOOP TO WASTE TIME. LDA #0. STA Y _REG.@YR_LOOP. LDA #0. STA X_REG.@XR_LOO P. DEC X_REG. BNE @XR_LOOP. DEC Y_REG. B NE @YR_LOOP. JSR INVERTRECTANGLE. JSR SE TUPA. RTS.Y_REG .BYTE 0.X_REG .BYTE 0.;- --.MOVESCREEN.; DEST SCREEN POSITION TO MOVE TO.; SOURCE SCREEN POSITION TO MOVE FROM.; LENGTH FIRST POSITION TO MOVE UN TIL (NEVER > 199). STX DEST. STA SOURCE. STY LENGTH.@BLP3. LDX DEST. JSR GETSCAN LINE. MOVEW R5:DEST. LDX SOURCE. JSR GET SCANLINE. MOVEW R5:SOURCE. LDY #0.@BLP1. LDA (SOURCE),Y. STA (DEST),Y. TYA. CLC. ADC #8. TAY. BNE @BLP1. INC SOURCE+1. I NC DEST+1.@BLP2. LDA (SOURCE),Y. STA (DE ST),Y. TYA. CLC. ADC #8. TAY. CPY #64. B CC @BLP2.. INC DEST. INC SOURCE.. LDA SO URCE. CMP LENGTH. BCC @BLP3. BEQ @BLP3.R TS.DEST .BYTE 0.SOURCE .BYTE 0.LENGTH .B YTE 0.;===...
×
C64 Image
> CLICK IMAGE PREVIEW FOR FULL MODAL