_  __   _  _         _ _     _      _           _           
  __| |/ /_ | || |     __| (_)___| | __ (_)_ __   __| | _____  __
 / _` | '_ \| || |_   / _` | / __| |/ / | | '_ \ / _` |/ _ \ \/ /
| (_| | (_) |__   _| | (_| | \__ \   <  | | | | | (_| |  __/>  < 
 \__,_|\___/   |_|    \__,_|_|___/_|\_\ |_|_| |_|\__,_|\___/_/\_\
                                                                 
            

M£S.4 SECTOR

FILE INFORMATION

FILENAME(S): M£S.4 SECTOR

FILE TYPE(S): PRG

FILE SIZE: 1.9K

FIRST SEEN: 2025-11-30 21:07:04

APPEARS ON: 1 disk(s)

FILE HASH

ad2eb0305d9e2081420f614efabb1fb3f0bb765910bc2d422318b779f757aece

FOUND ON DISKS (1 DISKS)

DISK TITLE FILENAME FILE TYPE COLLECTION TRACK SECTOR ACTIONS
PET UTILITY 09 M£S.4 SECTOR PRG DuncanTwain 31 9 DOWNLOAD FILE

FILE CONTENT & ANALYSIS

00000000: AA 00 30 BE 37 01 10 00  3B 2A 2A 2A 2A 2A 2A 2A  |..0.7...;*******|
00000010: 2A 2A 2A 20 53 45 43 54  4F 52 20 44 49 53 50 4C  |*** SECTOR DISPL|
00000020: 41 59 20 50 52 4F 47 52  41 4D 20 34 2E 30 20 2A  |AY PROGRAM 4.0 *|
00000030: 2A 2A 2A 2A 2A 2A 2A 2A  AA 20 00 AE 30 00 20 2E  |********. ..0. .|
00000040: 42 41 20 24 30 38 30 B0  40 00 20 2E 4F D3 50 00  |BA $080.@. .O.P.|
00000050: 20 2E 45 C3 60 00 AE 70  00 54 42 59 54 20 2E 44  | .E.`..p.TBYT .D|
00000060: 45 20 24 44 37 32 32 20  3B 50 52 49 4E 54 20 42  |E $D722 ;PRINT B|
00000070: 59 54 45 20 41 53 20 32  20 48 45 58 20 44 49 47  |YTE AS 2 HEX DIG|
00000080: 49 54 D3 80 00 43 52 4C  46 20 2E 44 45 20 24 44  |IT...CRLF .DE $D|
00000090: 35 33 34 20 3B 4F 55 54  50 55 54 20 43 52 4C C6  |534 ;OUTPUT CRL.|
000000A0: 90 00 AE 00 01 AE 10 01  53 45 43 54 4F 52 20 53  |........SECTOR S|
000000B0: 41 20 28 44 41 42 4C 4B  20 42 4C 4B 50 4E 54 29  |A (DABLK BLKPNT)|
000000C0: 20 3B 4F 50 45 4E 20 31  2C 38 2C 33 2C 22 23 A2  | ;OPEN 1,8,3,"#.|
000000D0: 20 01 20 4A 53 52 20 4F  50 4E 55 53 45 42 20 3B  | . JSR OPNUSEB ;|
000000E0: 20 AA 30 01 20 42 4E 45  20 45 52 D2 40 01 AE 50  | .0. BNE ER.@..P|
000000F0: 01 20 53 41 20 28 43 4D  44 42 4C 4B 20 42 4C 4B  |. SA (CMDBLK BLK|
00000100: 50 4E 54 29 20 3B 4F 50  45 4E 20 31 35 2C 38 2C  |PNT) ;OPEN 15,8,|
00000110: 31 B5 60 01 20 4A 53 52  20 4F 50 4E 55 53 45 42  |1.`. JSR OPNUSEB|
00000120: 20 3B 20 AA 70 01 20 42  4E 45 20 45 52 D2 80 01  | ; .p. BNE ER...|
00000130: AE 90 01 20 53 41 20 28  52 44 43 4D 44 20 42 4C  |... SA (RDCMD BL|
00000140: 4B 50 4E 54 29 20 3B 50  52 49 4E 54 23 31 35 2C  |KPNT) ;PRINT#15,|
00000150: 22 55 31 22 3B 33 3B 44  3B 54 3B D3 00 02 20 4A  |"U1";3;D;T;... J|
00000160: 53 52 20 53 45 4E 44 43  4D 44 31 35 20 3B 20 AA  |SR SENDCMD15 ; .|
00000170: 10 02 20 42 4E 45 20 45  52 D2 20 02 AE 30 02 20  |.. BNE ER. ..0. |
00000180: 53 41 20 28 42 50 43 4D  44 20 42 4C 4B 50 4E 54  |SA (BPCMD BLKPNT|
00000190: 29 20 3B 50 52 49 4E 54  23 31 35 2C 22 42 2D 50  |) ;PRINT#15,"B-P|
000001A0: 22 3B 53 41 3B B1 40 02  20 4A 53 52 20 53 45 4E  |";SA;.@. JSR SEN|
000001B0: 44 43 4D 44 31 35 20 3B  20 AA 50 02 20 42 4E 45  |DCMD15 ; .P. BNE|
000001C0: 20 45 52 D2 60 02 AE 70  02 3B 4E 4F 57 20 52 45  | ER.`..p.;NOW RE|
000001D0: 41 44 20 41 4E 44 20 44  49 53 50 4C 41 59 20 53  |AD AND DISPLAY S|
000001E0: 45 43 54 4F 52 20 4F 4E  20 53 43 52 45 45 CE 80  |ECTOR ON SCREE..|
000001F0: 02 20 4C 44 41 20 23 31  B5 90 02 20 53 54 41 20  |. LDA #1... STA |
00000200: 52 4F D7 00 03 4C 50 4E  58 52 4F 57 20 4C 44 41  |RO...LPNXROW LDA|
00000210: 20 23 31 B6 10 03 20 53  54 41 20 43 4F CC 20 03  | #1... STA CO. .|
00000220: 20 4A 53 52 20 43 52 4C  C6 30 03 4C 50 4E 58 43  | JSR CRL.0.LPNXC|
00000230: 4F 4C 20 4C 44 59 20 23  31 20 3B 4C 4F 47 49 43  |OL LDY #1 ;LOGIC|
00000240: 41 4C 20 46 49 4C 45 20  23 B1 40 03 20 4A 53 52  |AL FILE #.@. JSR|
00000250: 20 47 45 54 20 3B 47 45  54 20 42 59 54 45 20 46  | GET ;GET BYTE F|
00000260: 52 4F 4D 20 49 45 45 C5  50 03 20 42 4E 45 20 45  |ROM IEE.P. BNE E|
00000270: 52 52 20 3B 42 52 2E 20  49 46 20 45 52 52 4F D2  |RR ;BR. IF ERRO.|
00000280: 60 03 20 4A 53 52 20 54  42 59 54 20 3B 50 55 54  |`. JSR TBYT ;PUT|
00000290: 20 4F 4E 20 53 43 52 45  45 CE 70 03 20 44 45 43  | ON SCREE.p. DEC|
000002A0: 20 43 4F CC 80 03 20 42  4E 45 20 4C 50 4E 58 43  | CO... BNE LPNXC|
000002B0: 4F 4C 20 3B 4C 4F 4F 50  20 55 4E 54 49 4C 20 4C  |OL ;LOOP UNTIL L|
000002C0: 49 4E 45 20 44 4F 4E C5  90 03 20 44 45 43 20 52  |INE DON... DEC R|
000002D0: 4F D7 00 04 20 42 4E 45  20 4C 50 4E 58 52 4F 57  |O... BNE LPNXROW|
000002E0: 20 3B 4C 4F 4F 50 20 46  4F 52 20 4E 45 58 54 20  | ;LOOP FOR NEXT |
000002F0: 52 4F D7 10 04 AE 20 04  20 53 41 20 28 49 4E 49  |RO.... . SA (INI|
00000300: 43 4D 44 20 42 4C 4B 50  4E 54 29 20 3B 50 52 49  |CMD BLKPNT) ;PRI|
00000310: 4E 54 23 31 35 2C 22 49  31 A2 30 04 20 4A 53 52  |NT#15,"I1.0. JSR|
00000320: 20 53 45 4E 44 43 4D 44  31 B5 40 04 20 4C 44 59  | SENDCMD1.@. LDY|
00000330: 20 23 31 20 3B 43 4C 4F  53 45 20 4C 46 20 23 B1  | #1 ;CLOSE LF #.|
00000340: 50 04 20 4A 53 52 20 43  4C 4F 53 45 20 3B 20 AA  |P. JSR CLOSE ; .|
00000350: 60 04 20 4C 44 59 20 23  31 35 20 3B 43 4C 4F 53  |`. LDY #15 ;CLOS|
00000360: 45 20 4C 46 20 23 31 B5  70 04 20 4A 53 52 20 43  |E LF #1.p. JSR C|
00000370: 4C 4F 53 45 20 3B 20 AA  80 04 20 4C 44 41 20 23  |LOSE ; ... LDA #|
00000380: 30 30 20 3B 30 30 3D 20  4F CB 90 04 53 54 4F 50  |00 ;00= O...STOP|
00000390: 20 42 52 CB 00 05 20 4E  4F D0 10 05 20 4E 4F D0  | BR... NO... NO.|
000003A0: 20 05 20 4A 4D 50 20 53  45 43 54 4F D2 30 05 AE  | . JMP SECTO.0..|
000003B0: 40 05 45 52 52 20 53 41  20 28 49 4E 49 43 4D 44  |@.ERR SA (INICMD|
000003C0: 20 42 4C 4B 50 4E 54 29  20 3B 50 52 49 4E 54 23  | BLKPNT) ;PRINT#|
000003D0: 31 35 2C 22 49 31 A2 50  05 20 4A 53 52 20 53 45  |15,"I1.P. JSR SE|
000003E0: 4E 44 43 4D 44 31 35 20  3B 20 AA 60 05 20 4C 44  |NDCMD15 ; .`. LD|
000003F0: 59 20 23 31 20 3B 43 4C  4F 53 45 20 4C 46 20 23  |Y #1 ;CLOSE LF #|
00000400: B1 70 05 20 4A 53 52 20  43 4C 4F 53 45 20 3B 20  |.p. JSR CLOSE ; |
00000410: AA 80 05 20 4C 44 59 20  23 31 35 20 3B 43 4C 4F  |... LDY #15 ;CLO|
00000420: 53 45 20 4C 46 20 23 31  B5 90 05 20 4A 53 52 20  |SE LF #1... JSR |
00000430: 43 4C 4F 53 45 20 3B 20  AA 00 06 20 4C 44 41 20  |CLOSE ; ... LDA |
00000440: 23 24 45 45 20 3B 45 45  3D 20 45 52 52 4F D2 10  |#$EE ;EE= ERRO..|
00000450: 06 20 42 4E 45 20 53 54  4F D0 20 06 AE 30 06 3B  |. BNE STO. ..0.;|
00000460: 4F 50 45 4E 20 42 4C 4F  43 4B 20 46 4F 52 20 43  |OPEN BLOCK FOR C|
00000470: 4F 4D 4D 41 4E 44 20 43  48 41 4E 4E 45 CC 40 06  |OMMAND CHANNE.@.|
00000480: 3B 2D 2D 2D 2D 2D 2D 2D  2D 2D 2D 2D 2D 2D 2D 2D  |;---------------|
00000490: 2D 2D 2D 2D 2D 2D 2D 2D  2D 2D 2D 2D 2D 2D AD 50  |--------------.P|
000004A0: 06 43 4D 44 42 4C 4B 20  2E 42 59 20 31 35 20 3B  |.CMDBLK .BY 15 ;|
000004B0: 4C 4F 47 49 43 41 4C 20  A3 60 06 20 2E 42 59 20  |LOGICAL .`. .BY |
000004C0: 38 20 3B 50 48 59 53 49  43 41 4C 20 44 45 56 49  |8 ;PHYSICAL DEVI|
000004D0: 43 45 20 28 46 41 A9 70  06 20 2E 42 59 20 31 35  |CE (FA.p. .BY 15|
000004E0: 20 3B 43 48 41 4E 4E 45  4C 20 28 53 41 A9 80 06  | ;CHANNEL (SA...|
000004F0: 20 2E 53 49 20 30 20 3B  46 49 4C 45 4E 41 4D 45  | .SI 0 ;FILENAME|
00000500: 20 41 44 44 52 D3 90 06  20 2E 42 59 20 30 20 3B  | ADDR... .BY 0 ;|
00000510: 46 49 4C 45 4E 41 4D 45  20 4C 45 4E 47 54 C8 00  |FILENAME LENGT..|
00000520: 07 AE 10 07 AE 20 07 3B  4F 50 45 4E 20 42 4C 4F  |..... .;OPEN BLO|
00000530: 43 4B 20 46 4F 52 20 44  49 52 45 43 54 20 41 43  |CK FOR DIRECT AC|
00000540: 43 45 53 53 20 43 48 41  4E 4E 45 CC 30 07 3B 2D  |CESS CHANNE.0.;-|
00000550: 2D 2D 2D 2D 2D 2D 2D 2D  2D 2D 2D 2D 2D 2D 2D 2D  |----------------|
00000560: 2D 2D 2D 2D 2D 2D 2D 2D  2D 2D 2D 2D 2D 2D 2D 2D  |----------------|
00000570: 2D 2D AD 40 07 44 41 42  4C 4B 20 2E 42 59 20 31  |--.@.DABLK .BY 1|
00000580: 20 3B 4C 4F 47 49 43 41  4C 20 A3 50 07 20 2E 42  | ;LOGICAL .P. .B|
00000590: 59 20 38 20 3B 50 48 59  53 49 43 41 4C 20 44 45  |Y 8 ;PHYSICAL DE|
000005A0: 56 49 43 45 20 28 46 41  A9 60 07 20 2E 42 59 20  |VICE (FA.`. .BY |
000005B0: 33 20 3B 43 48 41 4E 4E  45 4C 20 28 53 41 A9 70  |3 ;CHANNEL (SA.p|
000005C0: 07 20 2E 53 49 20 44 41  4E 41 4D 20 3B 46 49 4C  |. .SI DANAM ;FIL|
000005D0: 45 4E 41 4D 45 20 41 44  44 52 D3 80 07 20 2E 42  |ENAME ADDR... .B|
000005E0: 59 20 31 20 3B 46 49 4C  45 4E 41 4D 45 20 4C 45  |Y 1 ;FILENAME LE|
000005F0: 4E 47 54 C8 90 07 44 41  4E 41 4D 20 2E 42 59 20  |NGT...DANAM .BY |
00000600: 27 23 27 20 3B 4E 41 4D  45 20 3D 20 23 20 46 4F  |'#' ;NAME = # FO|
00000610: 52 20 44 2D C1 00 08 AE  10 08 AE 20 08 3B 43 4F  |R D-....... .;CO|
00000620: 4D 4D 41 4E 44 20 53 54  52 49 4E 47 20 54 4F 20  |MMAND STRING TO |
00000630: 52 45 41 44 20 53 45 43  54 4F 52 20 31 38 2C B1  |READ SECTOR 18,.|
00000640: 30 08 3B 2D 2D 2D 2D 2D  2D 2D 2D 2D 2D 2D 2D 2D  |0.;-------------|
00000650: 2D 2D 2D 2D 2D 2D 2D 2D  2D 2D 2D 2D 2D 2D 2D 2D  |----------------|
00000660: 2D 2D 2D 2D AD 40 08 52  44 43 4D 44 20 2E 42 59  |----.@.RDCMD .BY|
00000670: 20 27 55 31 20 33 20 31  20 31 38 20 31 27 20 30  | 'U1 3 1 18 1' 0|
00000680: 20 3B 53 41 3D 33 2C 20  44 52 49 56 45 3D B1 50  | ;SA=3, DRIVE=.P|
00000690: 08 AE 60 08 AE 70 08 3B  43 4F 4D 4D 41 4E 44 20  |..`..p.;COMMAND |
000006A0: 53 54 52 49 4E 47 20 54  4F 20 53 45 54 20 42 55  |STRING TO SET BU|
000006B0: 46 46 45 52 20 50 4F 49  4E 54 45 52 20 54 4F 20  |FFER POINTER TO |
000006C0: B1 80 08 3B 2D 2D 2D 2D  2D 2D 2D 2D 2D 2D 2D 2D  |...;------------|
000006D0: 2D 2D 2D 2D 2D 2D 2D 2D  2D 2D 2D 2D 2D 2D 2D 2D  |----------------|
000006E0: 2D 2D 2D 2D 2D 2D 2D 2D  2D 2D 2D 2D AD 90 08 42  |------------...B|
000006F0: 50 43 4D 44 20 2E 42 59  20 27 42 2D 50 2C 33 2C  |PCMD .BY 'B-P,3,|
00000700: 31 27 20 30 20 3B 53 41  3D 33 2C 20 50 4F 49 4E  |1' 0 ;SA=3, POIN|
00000710: 54 45 52 3D B1 00 09 AE  10 09 AE 20 09 3B 43 4F  |TER=....... .;CO|
00000720: 4D 4D 41 4E 44 20 53 54  52 49 4E 47 20 54 4F 20  |MMAND STRING TO |
00000730: 49 4E 49 54 49 41 4C 49  5A 45 20 44 52 49 56 45  |INITIALIZE DRIVE|
00000740: 20 B1 30 09 3B 2D 2D 2D  2D 2D 2D 2D 2D 2D 2D 2D  | .0.;-----------|
00000750: 2D 2D 2D 2D 2D 2D 2D 2D  2D 2D 2D 2D 2D 2D 2D 2D  |----------------|
00000760: 2D 2D 2D 2D 2D 2D 2D 2D  AD 40 09 49 4E 49 43 4D  |--------.@.INICM|
00000770: 44 20 2E 42 59 20 27 49  31 27 20 B0 50 09 AE 60  |D .BY 'I1' .P..`|
00000780: 09 52 4F 57 20 2E 44 53  20 31 20 3B 52 4F 57 20  |.ROW .DS 1 ;ROW |
00000790: 43 4F 55 4E 54 45 D2 70  09 43 4F 4C 20 2E 44 53  |COUNTE.p.COL .DS|
000007A0: 20 31 20 3B 43 4F 4C 55  4D 4E 20 43 4F 55 4E 54  | 1 ;COLUMN COUNT|
000007B0: 45 D2 80 09 AE 90 09 45  4E 44 53 45 43 54 4F 52  |E......ENDSECTOR|
000007C0: 20 2E 45 CE 43                                    | .E.C           |
..0.7...;********** SECTOR DISPLAY PROGR
AM 4.0 *********. ..0. .BA $080.@. .OSP.
 .EC`..P.TBYT .DE $D722 ;PRINT BYTE AS 2
 HEX DIGITS..CRLF .DE $D534 ;OUTPUT CRLF
........SECTOR SA (DABLK BLKPNT) ;OPEN 1
,8,3,"#. . JSR OPNUSEB ; .0. BNE ERR@..P
. SA (CMDBLK BLKPNT) ;OPEN 15,8,1.`. JSR
 OPNUSEB ; .P. BNE ERR..... SA (RDCMD BL
KPNT) ;PRINT#15,"U1";3;D;T;S.. JSR SENDC
MD15 ; ... BNE ERR ..0. SA (BPCMD BLKPNT
) ;PRINT#15,"B-P";SA;.@. JSR SENDCMD15 ;
 .P. BNE ERR`..P.;NOW READ AND DISPLAY S
ECTOR ON SCREEN.. LDA #1... STA ROW..LPN
XROW LDA #1... STA COL . JSR CRLF0.LPNXC
OL LDY #1 ;LOGICAL FILE #.@. JSR GET ;GE
T BYTE FROM IEEEP. BNE ERR ;BR. IF ERROR
`. JSR TBYT ;PUT ON SCREENP. DEC COL.. B
NE LPNXCOL ;LOOP UNTIL LINE DONE.. DEC R
OW.. BNE LPNXROW ;LOOP FOR NEXT ROW... .
 SA (INICMD BLKPNT) ;PRINT#15,"I1.0. JSR
 SENDCMD1.@. LDY #1 ;CLOSE LF #.P. JSR C
LOSE ; .`. LDY #15 ;CLOSE LF #1.P. JSR C
LOSE ; ... LDA #00 ;00= OK..STOP BRK.. N
OP.. NOP . JMP SECTOR0..@.ERR SA (INICMD
 BLKPNT) ;PRINT#15,"I1.P. JSR SENDCMD15 
; .`. LDY #1 ;CLOSE LF #.P. JSR CLOSE ; 
... LDY #15 ;CLOSE LF #1... JSR CLOSE ; 
... LDA #$EE ;EE= ERROR.. BNE STOP ..0.;
OPEN BLOCK FOR COMMAND CHANNEL@.;-------
----------------------.P.CMDBLK .BY 15 ;
LOGICAL .`. .BY 8 ;PHYSICAL DEVICE (FA.P
. .BY 15 ;CHANNEL (SA... .SI 0 ;FILENAME
 ADDRS.. .BY 0 ;FILENAME LENGTH...... .;
OPEN BLOCK FOR DIRECT ACCESS CHANNEL0.;-
----------------------------------.@.DAB
LK .BY 1 ;LOGICAL .P. .BY 8 ;PHYSICAL DE
VICE (FA.`. .BY 3 ;CHANNEL (SA.P. .SI DA
NAM ;FILENAME ADDRS.. .BY 1 ;FILENAME LE
NGTH..DANAM .BY '#' ;NAME = # FOR D-A...
... .;COMMAND STRING TO READ SECTOR 18,.
0.;---------------------------------.@.R
DCMD .BY 'U1 3 1 18 1' 0 ;SA=3, DRIVE=.P
..`..P.;COMMAND STRING TO SET BUFFER POI
NTER TO ...;----------------------------
------------...BPCMD .BY 'B-P,3,1' 0 ;SA
=3, POINTER=....... .;COMMAND STRING TO 
INITIALIZE DRIVE .0.;-------------------
----------------.@.INICMD .BY 'I1' .P..`
.ROW .DS 1 ;ROW COUNTERP.COL .DS 1 ;COLU
MN COUNTER.....ENDSECTOR .ENC
C64 Preview

> CLICK IMAGE PREVIEW FOR FULL MODAL