Jump to content
IGNORED

MG Program copyright protection


acadiel

Recommended Posts

  • 3 weeks later...

FYI, I was able to Kryoflux the three MG disks (Explorer, Advanced Diagnostics, and DiskAssembler). We obviously can assemble two of these three products (since we have the source) without protection at this point, but I thought it would be pretty awesome to get real dumps of the disks. Doug's also going to be getting me the program to create the production Explorer disks to further experiment.

 

The disks do show some anomalies (because they're 30+ years old), but so far, we've been able to get HFE conversions (converted from the Kryoflux preservation format) of Explorer and Advanced Diagnostics to load in MAME. Michael Zapf is looking into DiskAssembler with Jean-Francois - the author of HxC - and why it won't read the protected track, which resets the MAME TI emulation.

 

The converted HFE files (both the ones I made/edited and the ones Jean-Francois gave me) all work with a GoTek HxC on my 9900 Mini PES disk controller. I assume that they would work with the TI FDC and a Corcomp PEB controller, and they likely would work with a Lotharek HxC device as well. I'll release them if we make some progress on the MAME front with DiskAssembler.

 

Here's some interesting info on how the protection likely is laid out on each of these products:

 

DiskAssembler: Has some strange sectors throughout the disk (with nothing in them - which might just be an error with the source media). None of the aforementioned sectors have any data near them. The main protection in track #9 appears to have three 1K sectors in it. The first two actually have data - the first has some code, the second sector has the loader screen text. The third one is mostly E5 and FFs and might be a phantom one; it has an invalid CRC and it seems to overlap the first track when looking at it via the HxC track editor.

 

Explorer: Tracks 20-39 have two nonstandard 1K sectors each with data in them. DC did this, and we have the source code. :)

 

Advanced Diagnostics: Tracks 26-38 each have five nonstandard 512 byte sectors on them. Track #39 (the last track) closely resembled track #9 in Disk Aseembler. There appear to be three 1K sectors on there. The first two have data. The third one has an invalid CRC but has some data other than E5's on it later on the sector and has the same slight overlap as noticed with DiskAssembler.

 

There might be other oddities in here that I'm probably chalking up to issues with this old media. For example, Advanced Diagnostics track #24 has some strange spacing inbetween standard 256 byte sectors.

 

 

post-22866-0-59100000-1523044232_thumb.png

post-22866-0-87300900-1523044352_thumb.png

post-22866-0-38601500-1523044433_thumb.png

  • Like 4
Link to comment
Share on other sites

Here is some more information on the DiskAssembler protection scheme:

 

In addition to the 'strange' sectors noted on track 9, DiskAssembler also contains entire tracks of data with no defined sectors. The odd tracks from track 11-37 contain raw ASCII data that is loaded into memory using the Read Track command. The remaining even tracks (10-38) and track 39 are not formatted.

 

I've seen the problem with the emulator resetting after reading track 9. At one point I had fixed this issue in ti99sim and successfully loaded the DiskAssembler code. I believe it was tied to the status register behavior but I'm not sure. However, I just went to check and it seems that I've since broken the code again and it's resetting the system.

  • Like 2
Link to comment
Share on other sites

I have pure EA5 images of all (EXPLORER, DISkASSEMBLER, and ADVANCED DIAGS) that were done years ago shortly after they came out by Will McGovern who was pissed that he couldn't make a backup of his rightfully purchased copies. Since I have my originals of all three, I got backup copies for myself.

Edited by atrax27407
Link to comment
Share on other sites

Here is some more information on the DiskAssembler protection scheme:

 

In addition to the 'strange' sectors noted on track 9, DiskAssembler also contains entire tracks of data with no defined sectors. The odd tracks from track 11-37 contain raw ASCII data that is loaded into memory using the Read Track command. The remaining even tracks (10-38) and track 39 are not formatted.

 

I've seen the problem with the emulator resetting after reading track 9. At one point I had fixed this issue in ti99sim and successfully loaded the DiskAssembler code. I believe it was tied to the status register behavior but I'm not sure. However, I just went to check and it seems that I've since broken the code again and it's resetting the system.

 

 

I'll post a picture of those tracks, but the HxC Track explorer doesn't show anything at all seemingly on them. It does state they have an "Arburg" format instead of an IBM FM/MFM format like the other tracks have.

 

The benefits to using a Kryoflux is that you can explore all the data :) I'll load up some more examples from DiskAssembler.

Link to comment
Share on other sites

I have pure EA5 images of all (EXPLORER, DISkASSEMBLER, and ADVANCED DIAGS) that were done years ago shortly after they came out by Will McGovern who was pissed that he couldn't make a backup of his rightfully purchased copies. Since I have my originals of all three, I got backup copies for myself.

 

And there's a few problems with those... they're memory images. The source code adapts itself depending on which system it's running on. So, if Will did a system snapshot on a specific config system, it'll work on that type of config, but freeze on others. The Advanced Diagnostics crack that's floating around freezes on the title screen for that very reason. Cracked Explorer shows strange characters on QI vs non-QI consoles.

 

DiskAssembler, when put unprotected into PROGRAM format, has five segments because of five different AORG's, for example. Including AORG's into scratchpad RAM, which is highly unusual for a PROGRAM image to do.

 

As noted, we have the source for Explorer and DiskAssembler now. I'll put some unencrypted assembled PROGRAM images on a disk image of those when I post the HFE files for the Kryoflux dumps. The nice thing is that true iron doesn't complain about the HFEs I made from the Kryoflux dumps, so you can run the original "floppy" so to speak now for all three programs. I actually bought that unit ($100 or so USD) to actually preserve these very three programs. It's going to likely sit on a shelf now :)

 

You can actually try the cracked Explorer image on Classic99... change the console to a V2.2 and you'll get a screen like below. It's because the memory image was taken on a non-V2.2 console, and when the memory image was grabbed, it was set up for a non V2.2 console. :) They also had disk controller specific code for the copyright protection as well.

post-22866-0-62736100-1523122489_thumb.png

post-22866-0-40768000-1523122540_thumb.png

  • Like 1
Link to comment
Share on other sites

Here is some more information on the DiskAssembler protection scheme:

 

In addition to the 'strange' sectors noted on track 9, DiskAssembler also contains entire tracks of data with no defined sectors. The odd tracks from track 11-37 contain raw ASCII data that is loaded into memory using the Read Track command. The remaining even tracks (10-38) and track 39 are not formatted.

 

I've seen the problem with the emulator resetting after reading track 9. At one point I had fixed this issue in ti99sim and successfully loaded the DiskAssembler code. I believe it was tied to the status register behavior but I'm not sure. However, I just went to check and it seems that I've since broken the code again and it's resetting the system.

 

Here's what the "raw ASCII" odd tracks look like in the HFE disk explorer. Note that even the HFE explorer can't show you the values because there's no "sector" to look at. Probably why the HxC software is identifying it as an Arburg encoding scheme. According to that web page, "This kind of floppy disks was pretty unreadable, even at the lowest level (using OmniFlop) because of their "tape-like" format, with no sector, no ID, no header, no CRC..."

 

Falcor, any insight into this? It's rather cool... goes beyond writing a regular sector into writing raw data with no format at all.

post-22866-0-03744800-1523126029_thumb.png

Link to comment
Share on other sites

The only address mark on the odd tracks is an Index address mark (FC). There is no ID address mark or any Data address marks. If it helps, here are the contents of the odd tracks in question:

C:11  H:0 -
0460DAAC0152200000000000000350494F00000000000000000000000000000000000000000000000000000000000000000000000010001F022002800000444956534C5354204D5059534C5750204C49202041492020414E44494F5249204349202053545750535453544C5750494C494D494C4D462049444C455253455452545750434B4F4E434B4F464C524558424C57504220202058202020434C52204E454720494E5620494E4320494E43544445432044454354424C2020535750425345544F414253204C4453204C4444205352412053524C20534C4120535243204A4D50204A4C54204A4C45204A4551204A4845204A4754204A4E45204A4E43204A4F43204A4E4F204A4C20204A4820204A4F502053424F2053425A2054422020434F4320435A4320584F5220584F50204C444352535443524D50592044495620535A4320535A43425320202053422020432020204342202041202020414220204D4F56204D4F5642534F4320534F43425049525343532A203E2C402B2D2829312E52544D42445847560000000000000000000000000000000000594E7E2760030407020E0C01060FBC059DB108090B0A0D16001012140544534B312EEFDFEFEFF7FFEFEFEFFFEFEFEFFFDFEFEFF7EFEFDFFFFFFFDFABF7FFFFFFFFC3000544534B312E0000000000000000000300000002E083E043A000320201CFBEC82083722EDCC80104303030300544534B312E0050CF020153E20202CC14CC720282CDDE12FC1E0002E0838006A0D39E02E083260430303030044130303002303000D80183C20000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000202D4FE020120000282D5030000000000000000000000000000000000000000D509BC60A91C0281D52C1AFB06A0A2E8D508F24002011100C801201007202A24100204E0201004E0200E06A0D3AC100006A0D3AC110006A0D3AC1200C320200E132F06A0A21A2002C800324006A0A21A20000280A55A1328C060A04CA060A04E8801324013100202D41AC02032408C8013068CB20282D4421AFA02023242C832A04CC832A04E06A0A12EC020A05002800005120402000005C800A05006A0A1EE0720CC140460A51006A0A21A2004C800A04CC3400A2D06A0A21A20060000000000000000000000040D0050500000000000160D00504E0000000005000C3000002F000000045BC33B1D0004C0D02040000280AA001627C060400A130EC17105C10200D5039C7016060280D5081AFBC80C200E1002C04516F20200A55AC0605000C800500088205000D3E0160A02005AA5C800500088205000D3F4
C:13  H:0 -
1602C80C2010C80150001E00045B0D4235425D428542AD42D5420060005A000600A00090001000E000C00020012000F0003001600120004001A0015A004601E0019000501E0000000A0020202000303132333435363738394142434445463A4748494A004C4E01160000FFFFFF09FF0A0009000A8009800A800041303030023030000100F0F4FCFD121F174441544120005445585400414F52472000524F52472000455155202000534C4153542020454E442020002A204C4F4144204552524F522D41424F525420280020495320494C4C4547414C205441472900505245535320414E59204B455920544F20424547494E0042797465732052656C6F632E20436F64650046494C454E414D45203A00505245535320414E59204B455920544F20434F4E54494E554500456E7465722D326E6420506173732C46352D53637265656E20546F67676C65005374617274202020203A203E0046696E6973682020203A203E004352552042617365203A203E20202020203E20202020203E20202020203E002053594D424F4C53005052494E544552204F4646004F5554505554204F4646005343524F4C4C20534C4F57004F4646004F4E20004641535400534C4F57004449536B415353454D424C455200496E7075742046696C65204E616D65206F72204E756C6C20666F72204D656D6F72790046696C6520496E666F726D6174696F6E005479706520202020203A00436F646520202020203A004C656E6774682020203A203E004C6F616465722020203A004C6F616473206174203A203E00536563746F727320203A203E004F7074696F6E7320203A004469732F466978203830005374616E6461726400452F41203E4130303020205842203E3234463420204D4D203E3731313800446973617373656D626C65204D656D6F72790050726F6772616D004D656D6F727920496D61676500437573746F6D2020004461746120616E64205465787420426C6F636B730041646472657373004461746120666F6C6C6F77696E6720537562726F7574696E65730053756220004E6F2E206F6620576F72647300416E79204368616E6765732020592F4E203A205900507265737320456E74657220746F20426567696E206F7200507265737320202020202020546F00463720202020536574205072696E746572204F757470757400463820202020536574204F75747075742044657669636500463D2020202053656C656374205363726F6C6C205370656564002853637265656E20436170747572652900446576696365204E616D653A004C6173742046696C65202D2041646420746F20697420592F4E203A205900284F75747075742900285072696E74657229004F7074696F6E2043616E63656C6C6564202D200046696C65204F70656E65642020202D2020202000
C:15  H:0 -
53637265656E205072696E74656420202D20200046696C6520436C6F7365642020202D2020202000416C72656164792045786973747320204164642859292F4572617365284E2920592F4E3A59002A2046696C6520636F6E7461696E733A002A2020204162736F6C75746520616E642072656C6F63617461626C652064617461002A2020204F7574206F66206F72646572206F726967696E73004551552020242D31002A205741524E494E472D2D523020686173206265656E20757365642061732061206C6162656C002A2052206F7074696F6E2077696C6C2062652064656C65746564206F6E20326E6420706173730042616420446576696365204E616D65004465766963652069732057726974652050726F746563746564004261642046696C652041747472696275746500496C6C6567616C204F7065726174696F6E004F7574206F66205370616365206F6E204469736B0043616E27742052656164205061737420456E64206F662046696C65004861726420446576696365204572726F720046696C65204572726F7200556E636F6D7072657373656400436F6D7072657373656400494454004162736F6C7574650052656C6F63617461626C65005245462020004445462020000098F2D1B41291D2330AB9D2381EE0D0041331D2021359D22E9B9AD1B49B4AD1DB9B4AD00D9B4AD20713A9D23B13AFD23B13B5D23B13BBD23B10F3D23B1107D23B111BD23B112FD23B1143D23B1157D23B116BD23B117FD23B1193D23B11A7D23B11BBD23B11CFD23B11E3D23B11F7D23B120BD23B121FD23B1233D23B1247D23B125BD23B126FD23B1283D23B1297D23B12ABD23B12BFD23B12D3D23B12E7D23B12FBD23B130FD23B1323D23B1337D23B0CC0D396D1DBD789D2780C40D396D00DD7CED27C0C80D396D207D7C5D280D8F1D901D91BD92ED940D955D971D9830000C820F0A8DAAA042083B002C0074013020720D03C06A0E99006A0EF7406A0EF8A0206D23406A0EE8ED47A0200D2440201009F04F0060116FD042083A406A0F6F60720D29406A0E8F2010004C2042083A0D9CC9801D1A816020460FFD40760D28416DD06A0F71A0720D29A9820D1B4D49016530720D29806A0F63001F0D68706A0F6300325D54906A0F630034DD55606A0EE7E0331D20206A0EE7E0359D22E0202000304208340D9CC0760D28416B79801D1AC16050282000313B1060210F29801D1AA13F89801D1A513A99801D1A21305028200051302058210E406A0ECA0D20200040205D20306A0E8960241FFFEC801D26EC3C1C1C106A0ECA0D22E00040205D22F06A0E8960241FFFEC801D2700281D0001B840460DEA0020000F30420FEF8060006C10420FEF80203000688C1D16C138C064316FB06A0F50A0C00D3A0D1B40420FE740008137402000C300201A00002022F00
C:17  H:0 -
0420FEFC02002F00C800D2760760D19416380760D18C1324020C11001D00D82050B1834CD820D1A3834DC020507205C0C81083501E0002001000C800834E02001200C80083560201DC5E020200020420FEF40420FE74000A0200100F10050110C02083560220000F0201D276020200020420FEFC04C09020D27713037820D1A3D27606A0F6300268D66006A0F63001F0D69A06A0F6300218D6A2020000080201D4680202A0008C521303060016FC1011C820A004D274C820A002D2760720D2488812D46813728812D46A136F0720D272106C06A0F6300268D6AF106706A0F50A0C00D38CD1B40420FE740008160506A0EB5E0C000460DAC80720D26806A0F63001F0D65506A0F630039DD66906A0EE3A06A0E9580C00010006A0F6300268D660D2B9098A028A0030160604CA06A0F6300218D98E100A028A000113030200020010D606A0F6300218D99B074A1305D839D276D839D2771007C14906A0E896C801D2760229000406A0F6300246D4F20229000804C0D03902804100160706A0F6300298D49C0720D26A100406A0F6300298D496074A1305D839D274D839D2751005C14906A0E896C801D274C160D27606A0EDF6020002410201D44A020200040420FEF4C160D27416070205D23406A0E896C801D274100F06A0EDF6020002910201D44A020200040420FEF4D8A2D449D233060216FB0760D2681609D820D276D24704C09800D277130205A0D247C160D24606A0EDF6020002B90201D44C020200020420FEF4D820D44CD239D820D44DD23A0202000104208340D9CC0760D28413020460DAC09801D1AC13069801D1A513069801D1AA16070282000116020460DAC0060210E89801D1A21305028200031302058210E006A0ECA0D23300040205D23406A0E8960241FFFEC801D27406A0ECA0D23800020205D23906A0E896D801D24706A0EF8A0760D26C130204E0D1880760D29813050760D19013270460EA5602012800CC60D1740200D5040202000ADC70060216FDDC60D175020000F2020200260420FEFC020001E5020128500202002602030005CC60D1740420FEFC022000280221004E060316F604E0D25406A0F76604C204208340DA040760D28413020460DAC006A0ECA0D23B00040205D23CC0C1C10206A0E8960A140760D2541603C901D2C61002C901D33E0914C0849803D1AC1603064211DD10DD9803D1AA1602060210F99803D1AB160505820282001D152310D09803D1AD160205C210F79803D1A516170760D25416C006A0F6F606A0EE7E00F2D1B406A0F71A0760D29813020460DB220760D26813020460DCDC0460DC829803D1A216D90760D25416030720D25410A506A0E8F2040006A0E97006A0F7FA0720D2940420FE2E003406A0E9EC012CD06083759801D1A5130A9801D1A013079801D1A3160D04208344000A10EE06A0
C:19  H:0 -
E9A29801D1A516020460DF0C0460DAC09801D1A4160404208344001410DE9801D1A7160406A0E92E10D8E5F39801D1A9160306A0E90C10D19801D1AE16CE0760D298165B06A0F3660207A000C3E0D274C80FD26EC80FD270C3A0D2880760D2461608C38E160304E0D2701023C80ED27010200760D248130802000006A1C00760D27216026800D270C38E1304C80ED276680FD276C820D276D27613089820D247D2761104A820D276D2701003B820D247D2708820D270D46816020720D2700760D268131B06A0F50A0C00D38CD1B40420FE740008160506A0EB5E0C000460DAC006A0EE3A074A13030209D3AD10020209D3AF06A0F0C606A0F1D4C820DAAAF0A8C3CF1603C820EF4CF0A80760D26A13030200D49C10020200D496C800E1260206D40106A0EE8E0000C0CF06A0F3FA06A0F1D406A0F0EE06A0F1D4064F02000078C800EBDC0760D19613040200003CC800EBDC04E0D2A406A0E60C0460EBC60760D28C130306A0F1D410F406A0F0EE0720D2960206D401C80ED2C20760D25013040620D2500460E37A028E40001A13C0CE09C30A230223D12E06A0F4320720D28E06A0F64EDDA0D177C3A0D2C206A0F6D00460E388028E20001A1BC0CE09A30A230223D0FE06A0F4320720D28E06A0F64EDDA0D177C3A0D2C2028E2C001A05028E3800140204E0D28E06A0F6EE0460E388028E10001A17C0CE09830A230223D09E06A0F432C0CE0A830883028E1D001A0406A0F4420460E3880A13A0CF05C306A0EE0EE388028E08001A18028E0C001A020460E37AC0CE09830A230223D0AE06A0F4320720D28E06A0F6E6DDA0D1770A2E04E0D28E06A0F6EE102D028E04001A2B028E078014E5C0CE09630A230223D04E06A0F4320720D28E06A0F64E8820D2C2DAF816180760D196167FC060D2BE0281003C137A04C2888ED302137602220004804212F9C88ED2FE022E0004C88ED300C802D2BE1069028E00801A5F0760D03C1604028E02001A591015028E01801412028E00A01452028E00901A030203D04A10020203D04206A0F4320720D28E06A0F6E6104A27A0D0341640028E02E01A0627A0D036163A028E03201337C0CE09530A230223D00E06A0F432028E02001AAA028E03401431028E02E014090720D28E06A0F6E6028E02A01427DDA0D17706A0E60CC0CEC020D2C2028002E0130C0280022011092020D03813032020D03A16120760D244130F0760D26A13049820D28AD45A160806A0EE0EE3880203D48B06A0F432C0CE06A0F3FA0206D42206A0F4A60206D43506A0F46406A0EEF606A0F1D40760D244130AC020D2A402800002110502800003150206A0F16E0760D250160206A0E8BC0460E152CDA0D1740226000506A0E816C0C1D060D28A09810221FFCF0A11C0A1E3EEC821E3FAD26A0452E406E406E422E422E42AE42A000000010001
C:21  H:0 -
00000001000006A0EE8ED4A8042083AC4820D478D2420760D242130FCDA0D242100A06A0EE8ED9BF100306A0EE8ED9C506A0EE740006DDA0D1750760D26A1302A0E0D27406A0F3FADDA0D175DDA0D17B0760D26A160406A0EE8ED9AA100306A0EE8ED9B3DDA0D17C06A0F1D40460E15204E0D2920760D28413020460E5C40760D24A16090206D3FA06A0EE8ED4A806A0F1D406A0F1D40760D268131D0201D85FC801E4B80760D25A130A06A0EE8ED84E06A0F1D406A0EE8ED85F06A0F1D40760D25C130704E0D25C0201D881C801E4B810EC06A0F1D40760D24416570200D24A0201000504D0060116FD0720D24406A0EF1406A0E9A28820369CD46A131206A0EE8ED8A306A0F1D406A0EE8ED8CA06A0F1D406A0EF140720D26C0420FE2E003610030420FE2E003406A0F630039AD52906A0ECFC98208375D1AE130998208375D1A116F606A0EDE006A0EF2A10ED06A0EF7406A0F6F606A0F71A06A0EE7E00F2D1B40760D268130A06A0E9580C00040004E0D25E04E0D2600460DCF80760D29813020460DB220460DC820760D28013070760D24A160406A0EFEC06A0F2BC06A0F5600760D282130ECDA0D17402000C890420FEF8C08109820580C0460420FEFC06A0F1D406A0EF1406A0E9A206A0E9580C0001000420FE2E003406A0F630039AD71706A0F63003AED53706A0ECFC98208375D1AE130998208375D1A116F606A0EDE006A0EF2A10E90460DAC0C80BD2B40760D268160906A0F094C2E0D2B4045B06A0E832E4704D4704E0D2A20760D28C160D9819D456120A9819D45E13079819D45A1B0405CF880FD27014EAD819D28A9819D454151F06A0E87806A0E832E6600760D24A16150720D24A0206D3FA06A0EE8ED4A806A0F1D406A0F1D40760D28013070760D244130406A0EFEC06A0F2BC0460E3C89819D456150306A0EE3A10C49819D45E160306A0E87810BA9819D45A12020460E7B806A0E816C1419820D28AD458156504E0D26A9820D28AD4571319A160D274C820D25ED25E13040720D25A0720D1928805D26014040720D25C0720D192C805D260160205A0D2600720D26A1011C820D260D26013040720D25A0720D1928805D25E14040720D25C0720D192C805D25EC805D2C40760D28C16040720D28C83C5135D06A0E832E73C0720D2A20206D4010760D26A160406A0EE8ED496100306A0EE8ED49C8820D2C4D26E1403C820D2C4D26EC0E0D2C406A0F3FAC3E0D2C406A0F1D406A0F0EE0206D40C0760D2A213020460E164C2E0D2B4045BC060D2A40A119820D28AD45A1604A160D27405A0D2C0C385C845D2A605A0D2A404E0D28CC2E0D2B4045B9819D45D16020460E69A9819D4611605058906A0F0C60460E62806A0E9900206D3FA06A0EE8ED4B5DD9906A0EE8ED4CA06A0F1D40460E4709819D45513069819D45613039819D45D
C:23  H:0 -
160206A0EE3A9819D45913E19819D45A13DE0460E736C30B0589C28A1305D07906C1D07906C11004C14906A0E896C245045CC81BE846C81BEC9E0760D296160404E0D252046000000760D25213020460EC460206D40106A0F52E001E0206D40106A0EE8ED48B06A0F4A60206D42206A0F46406A0F1D410E40760D28616090760D25A16060760D25C160305CFC80FD2880720D286045B0200000404C2D0B509820282004111020222FFF90222FFD00242000F0A41A042060016F0045B04E0D250C020D2C2028004201304028006A01301045B04C1C0A1D33E13FB83821306022100040281003C13F410F5C821D340D250045BC13BC30B06A0F50A0C00D382D466D804834C0420FE74000A045CD120D482098405840244000702000007D024D48306C4D804D48206C00420FF00045BC80BD2B60760D29416070720D29406A0F6300022D5BB100604E0D29406A0F6300022D5B6C2E0D2B6045BC03BC07B0420FEF002200009C80083560420FE740008045B02000040D8008C0206C0D8008C0202002000020103C0D8008C00060116FC045B0201004E02002020C840D3FA064118FC045BC30B0760D278130606A0E9580CC0010004E0D2780760D27C130A06A0E9580C40010004E0D27C06A0F630000AD5AE0760D280130A06A0E9580C80010004E0D28006A0F6300016D5AE045CC03B0420FEF8D08102011E00020300800420FEF00420FF040300000203000000D820837C837C1610060316F2D042020300800420FEF00420FF04D820837C837C1603060316F610DDD0420420FEF0045BC03B02011C00020200240420FEF00580060216FB045B0460DF080202400080A0D26E11F90202600080A0D2701BF406A0F630039DD563020003BB02030006C163D37A06A0EDF60201D44A020200040420FEF40220FFFA064318F20202000A04208340D9CC0760D28413020460DAC006A0ECA0D23B00040205D23CC0C1C10206A0E8960A14C901D3660914C0849803D1AC160506020282000A11E010E19803D1AA13F89803D1AB16050282000C150F058210D69803D1AD13F89803D1A51604020200030460DB4E9803D1A216EE04E0D29C04C1C321D37A028C10001109028C1FFF15060760D29C16021D0010011E0002810006130205C110ED0760D29C160C020240000203A00002041000CCF2060416FD0720D29C10DDC1E0D26E022760000460DF08C0FBC30BD0400981C801D2400A11C821DA9AEB7E06A0F53A037006A0F63003720000C00305800420FEF802411F000420FEF0C803EB9806A0E9580000010006A0F630039AD81406A0F63003ACD5150420FE2E003606A0ECFC98208375D1A013FA06A0F53A0370045C0760D252161A04C1C0A1D2C6808F1407022100040281007816F70460E15E884FD2C814F6C821D2C8D24E0660D24E0720D2520200E152C800EC9E
C:25  H:0 -
0760D24C16040720D29606A0F0EE0200000605A0D24C880FD24E14158800D24C13140760D244130DC0CF0583042083AC0760D242160A0583042083AC0760D24216040460E15604E0D25204E0D24C0760D18A13070200D4910201D41E0202D40610060200D48B0201D4060202D42CC800EC82C801EC86C802EC8E0206D40106A0EE8ED48B0206D40606A0F4A60206D42C06A0F46406A0EEF606A0F1D40460E152C81BECCAC81BECE2C81BECE4C81BECF8C83BECEE05A0ECEEC81BECD0C81BECDAC83BECDE0620ECDAD020D23B0980028000041310020630000203000302040004D923D23BD23B0604060316FAD806D23C058010ED06C0D800D23B045B0420FF040300000203000000D020837C13F7045B06A0ECFC1017C30B04E0D2840760D2941303020002001002020000010420FF040300000203000000D060837C1603060016F5104BD06083759801D1A9160206A0E90C9801D19D160304E0D18A10389801D19E16030720D18A10329801D1A516040720D2840460E4709801D1A3160404208344000A10249801D1A41604042083440014101D9801D1A6160404208344000010169801D1A7160206A0E92E9801D1A1160506A0EDE006A0EF2A10099801D17513039801D1AE16060760D29016060720D290109E0760D290169B04E0D290045C0760D292160502000028C800D292045B04E0D292045B02020003C0450241000FD8A1D44ED44A0B45060218F7045BC37B0760D244130D042083AC4820D478D2420760D2421307DDA0D242DDA0D243045D042083A806A0F3FA045DC34B06A0E9580C000200130B02000D000201D3AA020200500420FEFC0209D3AA045D06A0EB5E0C000720D2840460E470C07BDDB5060116FD045BC07BDDB9060116FD045BC03BC07B04C2D0B106C20420FEF4045BC03BDDB0D41016FD045BC83BEEACC83BEEB2C30B04E0D28406A0F630039AD7A706A0E9EC03B6D06083759801D1A013109801D1A5130D9801D199160304E0D258100C9801D19813079801D1AE130410E80720D28410020720D25806A0F53A039AD0608375045C524C0760D2C0130BC820EEF4D44004C0C020D2C00220003006C0D800D442045B020000280201D3FA024807FFCA31280005C8060016F902005040D8008C0206C0D8008C020228F920A220D2920200001602022000D8028C001000D8028C0002020026024807FFD82828008C000588060216F80228002A060016EB6220D292045B020004000201202002022800CC81060016FD04C8045B020000080202D17F0203D188C802EFAEC803EFA8C803EFBA0201000804E0D1889821D004D17F1303060116FA10020720D1880600130305C3058210E8045B02000C890420FEF80202D2070981A081A0010420FEF80981058106C1D4810420FEF0045BC30B06A0E9580C80010006A0EFC806A0E9580C80
C:27  H:0 -
000004E0D29E04E0D2A00760D194163F0760D18C130FC80CD2B8020C11001D00C020507202200016C070D0901E00C320D2B8100CC020835602403FFF0220000F0420FEF806C106000420FEF8C801D29E0281004014CC0760D18C1302C042100305C00420FEF809810281000B150304E0D2A0045C028100AE15FA0620D29E04C002810052110105800580C800D2A0045CC30B10B70287D0001414028780001A030287A0001A0E05CF180C880FD2701409C3B7C060D2A40A11C84ED2A605A0D2A4045B0460E620C30B0206D3FA06A0F52E000706A0EE8ED9A606A0F52E0002DDA0D19B06A0EE740008DDA0D19B045CC80BD2BAC0CF0206D44406A0F3FE0760D244162906A0F412102F042083ACC0E0D24220E0D478131307431311C803D3FAC1608322F960D47837500760D2BC131C0206D40106A0EE8ED89A06A0F1D4D820D179D8A0C0CF0760D2BC130E0620D2BC13DC058310DAD820D17AD8A002000002C800D2BC060310D1C2E0D2BA045B2D32C80BD2BAC10FC820F16CD8A002800002130405E0D8A0064410020620D2A4C0C4042083ACC0E0D24220E0D47813100743130EC803D3FAC1608322F960D47837500206D40106A0EE8ED89A06A0F1D40620D8A005840620D2A416E2D820D179D8A0C2E0D2BA045BC34B04E0D28406A0EF1404E0D256C820F1EAF2540760D280133605A0D2A0C0A0D2A002820003110F04E0D2A005A0D29EC0A0D29E02820040110604E0D29E06A0EFEC06A0F2BC02020C80C802F23E02020014C802F2560202005002000D000201D3FA0420FEF406A0E95800000300160BC820F23EF24E06A0EB5E000006A0F3440000000013F08820D256D468152211110720D256C820F270F2540760D27C130902020C40C802F23E0202000AC802F25610D20760D256C820F292F2540760D278130802020CC0C802F23E04C2C802F25610C204E0D29604E0D2C006A0ED1606A0E9900206D3FA045DC30B0760D27C131002000D00020120000420FEF002000C45020101000420FEF006A0E9580C40030002000D000201D174020200020420FEF405C00201D207D0B109820420FEF402000C8505C206C2D0420420FEF002000C450420FEF006A0E9580C8003000760D27C130406A0E9580C40030002000C8502014E000420FEF002000C450420FEF0045CC03B04D0C83BF352C30B04208344000006A0F63003ADD51506A0ECFC0760D284045CC34B04E0D2560760D280132E02030C80C820F36EF3BE02000014C800F3C005E0D29E06A0F2BC020400070205280002020050C803F3AEC803F3B802000D00C0450420FEF406A0E95800000300160906A0EB5E000006A0F3440000000013F3100402250050060416E90760D256160F0720D2560760D27C130A02030C40C820F3DAF3BE0200000AC800F3C010CD020801E0045D5446DDA0D176C30B
C:29  H:0 -
C14306A0EDF60205D44A06A0EE6A0004045CC30B0206D3FACDA0D464C14F06A0EDF60205D44A06A0EE6A0004DDA0D175045CC30BC14306A0EE6A0004DDA0D175045CC0C3110BDDA0D176C1030944DDA4D44E0243000FDDA3D44E045BDDA0D17A050310F1DDA0D19BC020D2A4131B0A100201D2A6D0B10760D18E130270A0D19C9802D1751A099802D19A1B06DD829802D19B1604DD821002DDA0D17E060016EADDA0D19B045BC30BC020D2A413120204D2A6C154DDA0D17606A0EDF60205D44A06A0EE6A00040600130405C4DDA0D17710F0045CC30B0200004E0201D050020200020420FEF4064018FC06A0F6300002D58B06A0F630000FD59706A0F630001BD5A206A0EA3C002A045CC03BC07BC0FB0202000A0420FEF402200009C8008356D09309820582C0430420FEF4045BC03BDDA0D175060016FC045BC03BC04006C0D8008C0206C002204000D8008C020221FC4002002000D8008C00058116FC045BC38B06A0F1D4C260F87E1352020F800002000C85020112000420FEF00200000DC800F1F804C4C0E4375020CF130CC5830206D40106A0EE8ED4A2C0E4300006A0F3FA06A0F1D40609130205C410EC06A0F1D402000C85020150000420FEF002000003C800F1F8C260F87E04C40206D3FACDA0D17402070009C0E4375020CF13020587100A40CFCD83DDA0D17AC0E4300006A0F3FEDDA0D1750609130605C4060716EB06A0F1D410E206A0F1D406A0F1D40206D3FACDA0D174C0E0F87E06A0F3FA06A0EE8ED58206A0F1D406A0F1D4045EC03BC0BB06C0D8008C0206C002204000D8008C02D8328C00D49216FC045BC80BD2B2C0CE024300300933C10E0244000FC163F6660455F66EF696F69CF6C20760D18813050760D28E1302DDA0D17F028400091204DDA0D17D0224FFF60224003006C4DD84045BDDA0D17410E906A0E60CC0CEDDA0D17806A0EE0EF6ACC1041306DDA0D17B06A0F66EDDA0D17CC2E0D2B2045BDDA0D17406A0F66EDDA0D17910F6C80BD2B2C0CE02430C000993C10E024403C0096410BDC80BD2B204C310B6C80BD2B204C310F3C30B06A0E97006A0F630000DD5C006A0EA3C005206A0F63000A2D5CE06A0EA3C0142045CC30B06A0F6300192D5F106A0F63001E5D60206A0F630020DD60D06A0F6300235D61806A0F630025DD62506A0F6300285D63006A0F63002ADD63D06A0F63002D5D64A06A0EE7E02E0D004045CC34B06A0E9700760D254161A06A0F6300009D6B806A0F6300052D54906A0F6300058D6CD06A0F6300066D55606A0F630006DD6CD06A0F7CED2C606A0F82E045D06A0F6300005D6D506A0F6300052D6F006A0F6300056D6CD06A0F6300066D6F506A0F7CED33E10E9C83BF7DEC30B020003370203003AC163D2C606A0EDF60201D44A020200040420FEF40220FFEC064318F2045CC34B06A0E970
C:31  H:0 -
06A0F4D406A0F63000CFD71706A0F6300197D72F06A0F63001E8D73E06A0F6300238D75706A0F6300288D76F045D020000A2D060D17A0202000D0420FEF00580060216FB020000B60202000E0420FEF00580060216FB020000F2D060D1760202001E0420FEF002200014060216FA045B00005A5A5A39000A001A5A5A03A800000720F870C820F874F87AC820F876F8A404C1C801F87E0206074E0202001AC120F87A0203000AC984375006460604060316FA06C4D120F87B060406C4060216F10760F870130904E0F870C820F878F8A4C820F872F87A10E10203FFFF020103A802023000CC83060116FD0380898FC0ED00060760D19216068803D26E1A1B8803D2701B18C820F87EF87E130D8820F87EF87C1310C0A0F87E04C188433000130A05C1060216FAC060F87E0A11C843300005A0F87E0380C0ED00060760D19216068803D26E1A0D8803D2701B0A04C1C0A0F87E130688433000130605C1060216FA04E0D2420380C8213750D242038006A0EC40D801D201020000020202D12B0203D210C802DCBEC803DCB8C803DCCA0720D284100204E0D284C33EC2AD0004C20A0A2AA30AC03CC31CC18009A6024003FFC240C04C0207D23B81C113050581D09C09820420FEF402860004120204CA1001070AC0860602A0890760D28413030420FE2E003404E0D284D820D28483740420FEF8D2C102011E00020800800420FEF00420FF040300000203000000D160837C160F060816F3D04B020800800420FEF00420FF04D160837C1603060816F710DFD04B0420FEF0D0608375DB4100020760D29A16039801D1A813719801D1AE13719801D1A91604C14006A0E90CC0059801D1A516040760D29A136110639801D1A213609801D1AC135D9801D1AD135A9801D1A013549801D1AA160482401352060010AE9801D1AB16048080134B058010A79801D19E1611C100C00206000420FEF805800420FEF00640810014F80580020120000420FEF010939801D19F1609C002020120000420FEF080091389060010FA9801D19D1611C1008080130805800420FEF806000420FEF0058010F6020120000420FEF0C004104A074A164A9801D1751A459801D19A1B420420FEF080801604DB60D1AE00021005058010380720D28403800760D29A16069801D1AE13039801D175112CC0090220FFFFC0C204C205800420FEF880C0150D9801D17513F8C100058205800420FEF880C015039801D17516F7C004DF20F973C04C0420FEFCC0C660C2130BA04202002000DC40060316FDC04CC009C0860420FEF403800460F9EE028130001AFB02813A001AB6028141001AF5028146001BF210AFC2BE04E0D28404E0D29A06A0F53A02D006A0EA3C02D2C26ADA7CC16ADA84C020D24002800004160504E5000206A0EFC81004075513020460FD2C0715C22ADA7EC1EADA80C1AA
C:33  H:0 -
DA82D0970982C04705810200034A0420FEF406A0F63002FAD79AC806FC2406A0F6300308000007650002130E06A0EE98D7A703B60760D28413020460FD620760D25813020460FD7204C2C0CA0204000A3C840222000704208340D9CC0760D28416ECC00705808810D17213EEC809FC7CC808FC7EC807FC8006A0F50A000000000000028A001416020460FD820420FE7400081606C809FC9C06A0EB5E000010D407250002074A131F06A0F630039AD7EC028A000A130706A0F6300016D5B206A0F090100906A0F630000AD5B2100406A0F630039AD8000420FE2E003404E0D2400720D29A038002030016C32D0010022CF92002000D000204002802020002024C07FF02012800A04C0420FEF405C005CC060416F506A0E9580CC00300160406A0EB5E0CC01091060316E410D1C809FD3406A0E9580000010006A0F630039AD814028A000A1308028A0014160906A0F6300016D5AE100406A0F630000AD5AE04D510BA06A0F53A039A06A0F630039AD7D810E7C809FD7A06A0E958000000001690108904E0D29C02000C81D060D1B30420FEF00420FE74000813060720D29C06A0E9580C80010002000C800201D1B0020200020420FEF406A0E9580C80000016130460FC94E5F1F2FBF4EBE9EAF6A2B3BBBAB8A2E4FBA2EFEBEEEEE7F4F5A2E9F4E3F2EAEBE5F506A0E9580C8001000760D29C160C02000C81D060D1AF0420FEF006A0E9580C8000000460FCA006A0EE98D82803BE0760D28416A40760D25816EA02000C81D060D1B20420FEF010E9FE20FE40FE64176C00500000000000000000C81B83E8C83E83ECC320200EC809200E02E083E00694C920FE34830205E0837304600060C120166C069402E0FE20C80C200E0380FE78FE78C30C161C02E083E0C1200050069402040011DB44040210040000000000000000DB6083E90402C160166CD81DFECF05E0FECE069502E0FE78020C2000058ED83E836D02039F00D8038400C0E083560223FFF80420FE2E0300D820FE7F8C02D8038C0253CCD0E088000953D74316032320837C1601F3CC0380FEF4FF14FEF4FF20FEF4FF30FEF4FF3CFEF4FF6CFEF4FF7E00000000000000000000000006A0FF4CD82D00028C00038006A0FF4C1304D83A8C00060C16FC038006A0FF52DB6088000002038006A0FF5213F6DEA08800060C16FC0380020A4000100104CAC31DD820FF0D8C02E30AD80C8C02C2AD0002C32D0004045BC31DD82D00018C02026C8000D80C8C02038002E083E0C80BFF0A06A0000E02E0FEF4C80B83F6038000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020020000201100004F0060116FD0200A00002012FF504F0060116FD0300000202E083E0042000008300FFD4
C:35  H:0 -
F96EF98E8320F8808320F8EE8320F936832083B4020F00200380C806FC2406A0F6300308000007650002130E06A0EE98D7A703B60760D28413020460FD620760D25813020460FD7204C2C0CA0204000A3C840222000704208340D9CC0760D28416ECC00705808810D17213EEC809FC7CC808FC7EC807FC8006A0F50A000000000000028A001416020460FD820420FE7400081606C809FC9C06A0EB5E000010D407250002074A131F06A0F630039AD7EC028A000A130706A0F6300016D5B206A0F090100906A0F630000AD5B2100406A0F630039AD8000420FE2E003404E0D2400720D29A038002030016C32D0010022CF92002000D000204002802020002024C07FF02012800A04C0420FEF405C005CC060416F506A0E9580CC00300160406A0EB5E0CC01091060316E410D1C809FD3406A0E9580000010006A0F630039AD814028A000A1308028A0014160906A0F6300016D5AE100406A0F630000AD5AE04D510BA06A0F53A039A06A0F630039AD7D810E7C809FD7A06A0E958000000001690108904E0D29C02000C81D060D1B30420FEF00420FE74000813060720D29C06A0E9580C80010002000C800201D1B0020200020420FEF406A0E9580C80000016130460FC94E5F1F2FBF4EBE9EAF6A2B3BBBAB8A2E4FBA2EFEBEEEEE7F4F5A2E9F4E3F2EAEBE5F506A0E9580C8001000760D29C160C02000C81D060D1AF0420FEF006A0E9580C8000000460FCA006A0EE98D82803BE0760D28416A40760D25816EA02000C81D060D1B20420FEF010E9FE20FE40FE64176C00500000000000000000C81B83E8C83E83ECC320200EC809200E02E083E00694C920FE34830205E0837304600060C120166C069402E0FE20C80C200E0380FE78FE78C30C161C02E083E0C1200050069402040011DB44040210040000000000000000DB6083E90402C160166CD81DFECF05E0FECE069502E0FE78020C2000058ED83E836D02039F00D8038400C0E083560223FFF80420FE2E0300D820FE7F8C02D8038C0253CCD0E088000953D74316032320837C1601F3CC0380FEF4FF14FEF4FF20FEF4FF30FEF4FF3CFEF4FF6CFEF4FF7E00000000000000000000000006A0FF4CD82D00028C00038006A0FF4C1304D83A8C00060C16FC038006A0FF52DB6088000002038006A0FF5213F6DEA08800060C16FC0380020A4000100104CAC31DD820FF0D8C02E30AD80C8C02C2AD0002C32D0004045BC31DD82D00018C02026C8000D80C8C02038002E083E0C80BFF0A06A0000E02E0FEF4C80B83F6038000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020020000201100004F0060116FD0200A00002012FF504F0060116FD0300000202E083E0042000008300FFD4
C:37  H:0 -
F96EF9948320FBBA8320F8EE8320F936832083B4020F00200380C806FC2406A0F6300308000007650002130E06A0EE98D7A703B60760D28413020460FD620760D25813020460FD7204C2C0CA0204000A3C840222000704208340D9CC0760D28416ECC00705808810D17213EEC809FC7CC808FC7EC807FC8006A0F50A000000000000028A001416020460FD820420FE7400081606C809FC9C06A0EB5E000010D407250002074A131F06A0F630039AD7EC028A000A130706A0F6300016D5B206A0F090100906A0F630000AD5B2100406A0F630039AD8000420FE2E003404E0D2400720D29A038002030016C32D0010022CF92002000D000204002802020002024C07FF02012800A04C0420FEF405C005CC060416F506A0E9580CC00300160406A0EB5E0CC01091060316E410D1C809FD3406A0E9580000010006A0F630039AD814028A000A1308028A0014160906A0F6300016D5AE100406A0F630000AD5AE04D510BA06A0F53A039A06A0F630039AD7D810E7C809FD7A06A0E958000000001690108904E0D29C02000C81D060D1B30420FEF00420FE74000813060720D29C06A0E9580C80010002000C800201D1B0020200020420FEF406A0E9580C80000016130460FC94E5F1F2FBF4EBE9EAF6A2B3BBBAB8A2E4FBA2EFEBEEEEE7F4F5A2E9F4E3F2EAEBE5F506A0E9580C8001000760D29C160C02000C81D060D1AF0420FEF006A0E9580C8000000460FCA006A0EE98D82803BE0760D28416A40760D25816EA02000C81D060D1B20420FEF010E9FE20FE40FE64176C00500000000000000000C81B83E8C83E83ECC320200EC809200E02E083E00694C920FE34830205E0837304600060C120166C069402E0FE20C80C200E0380FE78FE78C30C161C02E083E0C1200050069402040011DB44040210040000000000000000DB6083E90402C160166CD81DFECF05E0FECE069502E0FE78020C2000058ED83E836D02039F00D8038400C0E083560223FFF80420FE2E0300D820FE7F8C02D8038C0253CCD0E088000953D74316032320837C1601F3CC0380FEF4FF14FEF4FF20FEF4FF30FEF4FF3CFEF4FF6CFEF4FF7E00000000000000000000000006A0FF4CD82D00028C00038006A0FF4C1304D83A8C00060C16FC038006A0FF52DB6088000002038006A0FF5213F6DEA08800060C16FC0380020A4000100104CAC31DD820FF0D8C02E30AD80C8C02C2AD0002C32D0004045BC31DD82D00018C02026C8000D80C8C02038002E083E0C80BFF0A06A0000E02E0FEF4C80B83F6038000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020020000201100004F0060116FD0200A00002012FF504F0060116FD0300000202E083E0042000008300FFD4

Edited by ti99sim
  • Like 1
Link to comment
Share on other sites

 

The only address mark on the odd tracks is an Index address mark (FC). There is no ID address mark or any Data address marks. If it helps, here are the contents of the odd tracks in question:

C:11  H:0 -
0460DAAC0152200000000000000350494F00000000000000000000000000000000000000000000000000000000000000000000000010001F022002800000444956534C5354204D5059534C5750204C49202041492020414E44494F5249204349202053545750535453544C5750494C494D494C4D462049444C455253455452545750434B4F4E434B4F464C524558424C57504220202058202020434C52204E454720494E5620494E4320494E43544445432044454354424C2020535750425345544F414253204C4453204C4444205352412053524C20534C4120535243204A4D50204A4C54204A4C45204A4551204A4845204A4754204A4E45204A4E43204A4F43204A4E4F204A4C20204A4820204A4F502053424F2053425A2054422020434F4320435A4320584F5220584F50204C444352535443524D50592044495620535A4320535A43425320202053422020432020204342202041202020414220204D4F56204D4F5642534F4320534F43425049525343532A203E2C402B2D2829312E52544D42445847560000000000000000000000000000000000594E7E2760030407020E0C01060FBC059DB108090B0A0D16001012140544534B312EEFDFEFEFF7FFEFEFEFFFEFEFEFFFDFEFEFF7EFEFDFFFFFFFDFABF7FFFFFFFFC3000544534B312E0000000000000000000300000002E083E043A000320201CFBEC82083722EDCC80104303030300544534B312E0050CF020153E20202CC14CC720282CDDE12FC1E0002E0838006A0D39E02E083260430303030044130303002303000D80183C20000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000202D4FE020120000282D5030000000000000000000000000000000000000000D509BC60A91C0281D52C1AFB06A0A2E8D508F24002011100C801201007202A24100204E0201004E0200E06A0D3AC100006A0D3AC110006A0D3AC1200C320200E132F06A0A21A2002C800324006A0A21A20000280A55A1328C060A04CA060A04E8801324013100202D41AC02032408C8013068CB20282D4421AFA02023242C832A04CC832A04E06A0A12EC020A05002800005120402000005C800A05006A0A1EE0720CC140460A51006A0A21A2004C800A04CC3400A2D06A0A21A20060000000000000000000000040D0050500000000000160D00504E0000000005000C3000002F000000045BC33B1D0004C0D02040000280AA001627C060400A130EC17105C10200D5039C7016060280D5081AFBC80C200E1002C04516F20200A55AC0605000C800500088205000D3E0160A02005AA5C800500088205000D3F4
C:13  H:0 -
1602C80C2010C80150001E00045B0D4235425D428542AD42D5420060005A000600A00090001000E000C00020012000F0003001600120004001A0015A004601E0019000501E0000000A0020202000303132333435363738394142434445463A4748494A004C4E01160000FFFFFF09FF0A0009000A8009800A800041303030023030000100F0F4FCFD121F174441544120005445585400414F52472000524F52472000455155202000534C4153542020454E442020002A204C4F4144204552524F522D41424F525420280020495320494C4C4547414C205441472900505245535320414E59204B455920544F20424547494E0042797465732052656C6F632E20436F64650046494C454E414D45203A00505245535320414E59204B455920544F20434F4E54494E554500456E7465722D326E6420506173732C46352D53637265656E20546F67676C65005374617274202020203A203E0046696E6973682020203A203E004352552042617365203A203E20202020203E20202020203E20202020203E002053594D424F4C53005052494E544552204F4646004F5554505554204F4646005343524F4C4C20534C4F57004F4646004F4E20004641535400534C4F57004449536B415353454D424C455200496E7075742046696C65204E616D65206F72204E756C6C20666F72204D656D6F72790046696C6520496E666F726D6174696F6E005479706520202020203A00436F646520202020203A004C656E6774682020203A203E004C6F616465722020203A004C6F616473206174203A203E00536563746F727320203A203E004F7074696F6E7320203A004469732F466978203830005374616E6461726400452F41203E4130303020205842203E3234463420204D4D203E3731313800446973617373656D626C65204D656D6F72790050726F6772616D004D656D6F727920496D61676500437573746F6D2020004461746120616E64205465787420426C6F636B730041646472657373004461746120666F6C6C6F77696E6720537562726F7574696E65730053756220004E6F2E206F6620576F72647300416E79204368616E6765732020592F4E203A205900507265737320456E74657220746F20426567696E206F7200507265737320202020202020546F00463720202020536574205072696E746572204F757470757400463820202020536574204F75747075742044657669636500463D2020202053656C656374205363726F6C6C205370656564002853637265656E20436170747572652900446576696365204E616D653A004C6173742046696C65202D2041646420746F20697420592F4E203A205900284F75747075742900285072696E74657229004F7074696F6E2043616E63656C6C6564202D200046696C65204F70656E65642020202D2020202000
C:15  H:0 -
53637265656E205072696E74656420202D20200046696C6520436C6F7365642020202D2020202000416C72656164792045786973747320204164642859292F4572617365284E2920592F4E3A59002A2046696C6520636F6E7461696E733A002A2020204162736F6C75746520616E642072656C6F63617461626C652064617461002A2020204F7574206F66206F72646572206F726967696E73004551552020242D31002A205741524E494E472D2D523020686173206265656E20757365642061732061206C6162656C002A2052206F7074696F6E2077696C6C2062652064656C65746564206F6E20326E6420706173730042616420446576696365204E616D65004465766963652069732057726974652050726F746563746564004261642046696C652041747472696275746500496C6C6567616C204F7065726174696F6E004F7574206F66205370616365206F6E204469736B0043616E27742052656164205061737420456E64206F662046696C65004861726420446576696365204572726F720046696C65204572726F7200556E636F6D7072657373656400436F6D7072657373656400494454004162736F6C7574650052656C6F63617461626C65005245462020004445462020000098F2D1B41291D2330AB9D2381EE0D0041331D2021359D22E9B9AD1B49B4AD1DB9B4AD00D9B4AD20713A9D23B13AFD23B13B5D23B13BBD23B10F3D23B1107D23B111BD23B112FD23B1143D23B1157D23B116BD23B117FD23B1193D23B11A7D23B11BBD23B11CFD23B11E3D23B11F7D23B120BD23B121FD23B1233D23B1247D23B125BD23B126FD23B1283D23B1297D23B12ABD23B12BFD23B12D3D23B12E7D23B12FBD23B130FD23B1323D23B1337D23B0CC0D396D1DBD789D2780C40D396D00DD7CED27C0C80D396D207D7C5D280D8F1D901D91BD92ED940D955D971D9830000C820F0A8DAAA042083B002C0074013020720D03C06A0E99006A0EF7406A0EF8A0206D23406A0EE8ED47A0200D2440201009F04F0060116FD042083A406A0F6F60720D29406A0E8F2010004C2042083A0D9CC9801D1A816020460FFD40760D28416DD06A0F71A0720D29A9820D1B4D49016530720D29806A0F63001F0D68706A0F6300325D54906A0F630034DD55606A0EE7E0331D20206A0EE7E0359D22E0202000304208340D9CC0760D28416B79801D1AC16050282000313B1060210F29801D1AA13F89801D1A513A99801D1A21305028200051302058210E406A0ECA0D20200040205D20306A0E8960241FFFEC801D26EC3C1C1C106A0ECA0D22E00040205D22F06A0E8960241FFFEC801D2700281D0001B840460DEA0020000F30420FEF8060006C10420FEF80203000688C1D16C138C064316FB06A0F50A0C00D3A0D1B40420FE740008137402000C300201A00002022F00
C:17  H:0 -
0420FEFC02002F00C800D2760760D19416380760D18C1324020C11001D00D82050B1834CD820D1A3834DC020507205C0C81083501E0002001000C800834E02001200C80083560201DC5E020200020420FEF40420FE74000A0200100F10050110C02083560220000F0201D276020200020420FEFC04C09020D27713037820D1A3D27606A0F6300268D66006A0F63001F0D69A06A0F6300218D6A2020000080201D4680202A0008C521303060016FC1011C820A004D274C820A002D2760720D2488812D46813728812D46A136F0720D272106C06A0F6300268D6AF106706A0F50A0C00D38CD1B40420FE740008160506A0EB5E0C000460DAC80720D26806A0F63001F0D65506A0F630039DD66906A0EE3A06A0E9580C00010006A0F6300268D660D2B9098A028A0030160604CA06A0F6300218D98E100A028A000113030200020010D606A0F6300218D99B074A1305D839D276D839D2771007C14906A0E896C801D2760229000406A0F6300246D4F20229000804C0D03902804100160706A0F6300298D49C0720D26A100406A0F6300298D496074A1305D839D274D839D2751005C14906A0E896C801D274C160D27606A0EDF6020002410201D44A020200040420FEF4C160D27416070205D23406A0E896C801D274100F06A0EDF6020002910201D44A020200040420FEF4D8A2D449D233060216FB0760D2681609D820D276D24704C09800D277130205A0D247C160D24606A0EDF6020002B90201D44C020200020420FEF4D820D44CD239D820D44DD23A0202000104208340D9CC0760D28413020460DAC09801D1AC13069801D1A513069801D1AA16070282000116020460DAC0060210E89801D1A21305028200031302058210E006A0ECA0D23300040205D23406A0E8960241FFFEC801D27406A0ECA0D23800020205D23906A0E896D801D24706A0EF8A0760D26C130204E0D1880760D29813050760D19013270460EA5602012800CC60D1740200D5040202000ADC70060216FDDC60D175020000F2020200260420FEFC020001E5020128500202002602030005CC60D1740420FEFC022000280221004E060316F604E0D25406A0F76604C204208340DA040760D28413020460DAC006A0ECA0D23B00040205D23CC0C1C10206A0E8960A140760D2541603C901D2C61002C901D33E0914C0849803D1AC1603064211DD10DD9803D1AA1602060210F99803D1AB160505820282001D152310D09803D1AD160205C210F79803D1A516170760D25416C006A0F6F606A0EE7E00F2D1B406A0F71A0760D29813020460DB220760D26813020460DCDC0460DC829803D1A216D90760D25416030720D25410A506A0E8F2040006A0E97006A0F7FA0720D2940420FE2E003406A0E9EC012CD06083759801D1A5130A9801D1A013079801D1A3160D04208344000A10EE06A0
C:19  H:0 -
E9A29801D1A516020460DF0C0460DAC09801D1A4160404208344001410DE9801D1A7160406A0E92E10D8E5F39801D1A9160306A0E90C10D19801D1AE16CE0760D298165B06A0F3660207A000C3E0D274C80FD26EC80FD270C3A0D2880760D2461608C38E160304E0D2701023C80ED27010200760D248130802000006A1C00760D27216026800D270C38E1304C80ED276680FD276C820D276D27613089820D247D2761104A820D276D2701003B820D247D2708820D270D46816020720D2700760D268131B06A0F50A0C00D38CD1B40420FE740008160506A0EB5E0C000460DAC006A0EE3A074A13030209D3AD10020209D3AF06A0F0C606A0F1D4C820DAAAF0A8C3CF1603C820EF4CF0A80760D26A13030200D49C10020200D496C800E1260206D40106A0EE8E0000C0CF06A0F3FA06A0F1D406A0F0EE06A0F1D4064F02000078C800EBDC0760D19613040200003CC800EBDC04E0D2A406A0E60C0460EBC60760D28C130306A0F1D410F406A0F0EE0720D2960206D401C80ED2C20760D25013040620D2500460E37A028E40001A13C0CE09C30A230223D12E06A0F4320720D28E06A0F64EDDA0D177C3A0D2C206A0F6D00460E388028E20001A1BC0CE09A30A230223D0FE06A0F4320720D28E06A0F64EDDA0D177C3A0D2C2028E2C001A05028E3800140204E0D28E06A0F6EE0460E388028E10001A17C0CE09830A230223D09E06A0F432C0CE0A830883028E1D001A0406A0F4420460E3880A13A0CF05C306A0EE0EE388028E08001A18028E0C001A020460E37AC0CE09830A230223D0AE06A0F4320720D28E06A0F6E6DDA0D1770A2E04E0D28E06A0F6EE102D028E04001A2B028E078014E5C0CE09630A230223D04E06A0F4320720D28E06A0F64E8820D2C2DAF816180760D196167FC060D2BE0281003C137A04C2888ED302137602220004804212F9C88ED2FE022E0004C88ED300C802D2BE1069028E00801A5F0760D03C1604028E02001A591015028E01801412028E00A01452028E00901A030203D04A10020203D04206A0F4320720D28E06A0F6E6104A27A0D0341640028E02E01A0627A0D036163A028E03201337C0CE09530A230223D00E06A0F432028E02001AAA028E03401431028E02E014090720D28E06A0F6E6028E02A01427DDA0D17706A0E60CC0CEC020D2C2028002E0130C0280022011092020D03813032020D03A16120760D244130F0760D26A13049820D28AD45A160806A0EE0EE3880203D48B06A0F432C0CE06A0F3FA0206D42206A0F4A60206D43506A0F46406A0EEF606A0F1D40760D244130AC020D2A402800002110502800003150206A0F16E0760D250160206A0E8BC0460E152CDA0D1740226000506A0E816C0C1D060D28A09810221FFCF0A11C0A1E3EEC821E3FAD26A0452E406E406E422E422E42AE42A000000010001
C:21  H:0 -
00000001000006A0EE8ED4A8042083AC4820D478D2420760D242130FCDA0D242100A06A0EE8ED9BF100306A0EE8ED9C506A0EE740006DDA0D1750760D26A1302A0E0D27406A0F3FADDA0D175DDA0D17B0760D26A160406A0EE8ED9AA100306A0EE8ED9B3DDA0D17C06A0F1D40460E15204E0D2920760D28413020460E5C40760D24A16090206D3FA06A0EE8ED4A806A0F1D406A0F1D40760D268131D0201D85FC801E4B80760D25A130A06A0EE8ED84E06A0F1D406A0EE8ED85F06A0F1D40760D25C130704E0D25C0201D881C801E4B810EC06A0F1D40760D24416570200D24A0201000504D0060116FD0720D24406A0EF1406A0E9A28820369CD46A131206A0EE8ED8A306A0F1D406A0EE8ED8CA06A0F1D406A0EF140720D26C0420FE2E003610030420FE2E003406A0F630039AD52906A0ECFC98208375D1AE130998208375D1A116F606A0EDE006A0EF2A10ED06A0EF7406A0F6F606A0F71A06A0EE7E00F2D1B40760D268130A06A0E9580C00040004E0D25E04E0D2600460DCF80760D29813020460DB220460DC820760D28013070760D24A160406A0EFEC06A0F2BC06A0F5600760D282130ECDA0D17402000C890420FEF8C08109820580C0460420FEFC06A0F1D406A0EF1406A0E9A206A0E9580C0001000420FE2E003406A0F630039AD71706A0F63003AED53706A0ECFC98208375D1AE130998208375D1A116F606A0EDE006A0EF2A10E90460DAC0C80BD2B40760D268160906A0F094C2E0D2B4045B06A0E832E4704D4704E0D2A20760D28C160D9819D456120A9819D45E13079819D45A1B0405CF880FD27014EAD819D28A9819D454151F06A0E87806A0E832E6600760D24A16150720D24A0206D3FA06A0EE8ED4A806A0F1D406A0F1D40760D28013070760D244130406A0EFEC06A0F2BC0460E3C89819D456150306A0EE3A10C49819D45E160306A0E87810BA9819D45A12020460E7B806A0E816C1419820D28AD458156504E0D26A9820D28AD4571319A160D274C820D25ED25E13040720D25A0720D1928805D26014040720D25C0720D192C805D260160205A0D2600720D26A1011C820D260D26013040720D25A0720D1928805D25E14040720D25C0720D192C805D25EC805D2C40760D28C16040720D28C83C5135D06A0E832E73C0720D2A20206D4010760D26A160406A0EE8ED496100306A0EE8ED49C8820D2C4D26E1403C820D2C4D26EC0E0D2C406A0F3FAC3E0D2C406A0F1D406A0F0EE0206D40C0760D2A213020460E164C2E0D2B4045BC060D2A40A119820D28AD45A1604A160D27405A0D2C0C385C845D2A605A0D2A404E0D28CC2E0D2B4045B9819D45D16020460E69A9819D4611605058906A0F0C60460E62806A0E9900206D3FA06A0EE8ED4B5DD9906A0EE8ED4CA06A0F1D40460E4709819D45513069819D45613039819D45D
C:23  H:0 -
160206A0EE3A9819D45913E19819D45A13DE0460E736C30B0589C28A1305D07906C1D07906C11004C14906A0E896C245045CC81BE846C81BEC9E0760D296160404E0D252046000000760D25213020460EC460206D40106A0F52E001E0206D40106A0EE8ED48B06A0F4A60206D42206A0F46406A0F1D410E40760D28616090760D25A16060760D25C160305CFC80FD2880720D286045B0200000404C2D0B509820282004111020222FFF90222FFD00242000F0A41A042060016F0045B04E0D250C020D2C2028004201304028006A01301045B04C1C0A1D33E13FB83821306022100040281003C13F410F5C821D340D250045BC13BC30B06A0F50A0C00D382D466D804834C0420FE74000A045CD120D482098405840244000702000007D024D48306C4D804D48206C00420FF00045BC80BD2B60760D29416070720D29406A0F6300022D5BB100604E0D29406A0F6300022D5B6C2E0D2B6045BC03BC07B0420FEF002200009C80083560420FE740008045B02000040D8008C0206C0D8008C0202002000020103C0D8008C00060116FC045B0201004E02002020C840D3FA064118FC045BC30B0760D278130606A0E9580CC0010004E0D2780760D27C130A06A0E9580C40010004E0D27C06A0F630000AD5AE0760D280130A06A0E9580C80010004E0D28006A0F6300016D5AE045CC03B0420FEF8D08102011E00020300800420FEF00420FF040300000203000000D820837C837C1610060316F2D042020300800420FEF00420FF04D820837C837C1603060316F610DDD0420420FEF0045BC03B02011C00020200240420FEF00580060216FB045B0460DF080202400080A0D26E11F90202600080A0D2701BF406A0F630039DD563020003BB02030006C163D37A06A0EDF60201D44A020200040420FEF40220FFFA064318F20202000A04208340D9CC0760D28413020460DAC006A0ECA0D23B00040205D23CC0C1C10206A0E8960A14C901D3660914C0849803D1AC160506020282000A11E010E19803D1AA13F89803D1AB16050282000C150F058210D69803D1AD13F89803D1A51604020200030460DB4E9803D1A216EE04E0D29C04C1C321D37A028C10001109028C1FFF15060760D29C16021D0010011E0002810006130205C110ED0760D29C160C020240000203A00002041000CCF2060416FD0720D29C10DDC1E0D26E022760000460DF08C0FBC30BD0400981C801D2400A11C821DA9AEB7E06A0F53A037006A0F63003720000C00305800420FEF802411F000420FEF0C803EB9806A0E9580000010006A0F630039AD81406A0F63003ACD5150420FE2E003606A0ECFC98208375D1A013FA06A0F53A0370045C0760D252161A04C1C0A1D2C6808F1407022100040281007816F70460E15E884FD2C814F6C821D2C8D24E0660D24E0720D2520200E152C800EC9E
C:25  H:0 -
0760D24C16040720D29606A0F0EE0200000605A0D24C880FD24E14158800D24C13140760D244130DC0CF0583042083AC0760D242160A0583042083AC0760D24216040460E15604E0D25204E0D24C0760D18A13070200D4910201D41E0202D40610060200D48B0201D4060202D42CC800EC82C801EC86C802EC8E0206D40106A0EE8ED48B0206D40606A0F4A60206D42C06A0F46406A0EEF606A0F1D40460E152C81BECCAC81BECE2C81BECE4C81BECF8C83BECEE05A0ECEEC81BECD0C81BECDAC83BECDE0620ECDAD020D23B0980028000041310020630000203000302040004D923D23BD23B0604060316FAD806D23C058010ED06C0D800D23B045B0420FF040300000203000000D020837C13F7045B06A0ECFC1017C30B04E0D2840760D2941303020002001002020000010420FF040300000203000000D060837C1603060016F5104BD06083759801D1A9160206A0E90C9801D19D160304E0D18A10389801D19E16030720D18A10329801D1A516040720D2840460E4709801D1A3160404208344000A10249801D1A41604042083440014101D9801D1A6160404208344000010169801D1A7160206A0E92E9801D1A1160506A0EDE006A0EF2A10099801D17513039801D1AE16060760D29016060720D290109E0760D290169B04E0D290045C0760D292160502000028C800D292045B04E0D292045B02020003C0450241000FD8A1D44ED44A0B45060218F7045BC37B0760D244130D042083AC4820D478D2420760D2421307DDA0D242DDA0D243045D042083A806A0F3FA045DC34B06A0E9580C000200130B02000D000201D3AA020200500420FEFC0209D3AA045D06A0EB5E0C000720D2840460E470C07BDDB5060116FD045BC07BDDB9060116FD045BC03BC07B04C2D0B106C20420FEF4045BC03BDDB0D41016FD045BC83BEEACC83BEEB2C30B04E0D28406A0F630039AD7A706A0E9EC03B6D06083759801D1A013109801D1A5130D9801D199160304E0D258100C9801D19813079801D1AE130410E80720D28410020720D25806A0F53A039AD0608375045C524C0760D2C0130BC820EEF4D44004C0C020D2C00220003006C0D800D442045B020000280201D3FA024807FFCA31280005C8060016F902005040D8008C0206C0D8008C020228F920A220D2920200001602022000D8028C001000D8028C0002020026024807FFD82828008C000588060216F80228002A060016EB6220D292045B020004000201202002022800CC81060016FD04C8045B020000080202D17F0203D188C802EFAEC803EFA8C803EFBA0201000804E0D1889821D004D17F1303060116FA10020720D1880600130305C3058210E8045B02000C890420FEF80202D2070981A081A0010420FEF80981058106C1D4810420FEF0045BC30B06A0E9580C80010006A0EFC806A0E9580C80
C:27  H:0 -
000004E0D29E04E0D2A00760D194163F0760D18C130FC80CD2B8020C11001D00C020507202200016C070D0901E00C320D2B8100CC020835602403FFF0220000F0420FEF806C106000420FEF8C801D29E0281004014CC0760D18C1302C042100305C00420FEF809810281000B150304E0D2A0045C028100AE15FA0620D29E04C002810052110105800580C800D2A0045CC30B10B70287D0001414028780001A030287A0001A0E05CF180C880FD2701409C3B7C060D2A40A11C84ED2A605A0D2A4045B0460E620C30B0206D3FA06A0F52E000706A0EE8ED9A606A0F52E0002DDA0D19B06A0EE740008DDA0D19B045CC80BD2BAC0CF0206D44406A0F3FE0760D244162906A0F412102F042083ACC0E0D24220E0D478131307431311C803D3FAC1608322F960D47837500760D2BC131C0206D40106A0EE8ED89A06A0F1D4D820D179D8A0C0CF0760D2BC130E0620D2BC13DC058310DAD820D17AD8A002000002C800D2BC060310D1C2E0D2BA045B2D32C80BD2BAC10FC820F16CD8A002800002130405E0D8A0064410020620D2A4C0C4042083ACC0E0D24220E0D47813100743130EC803D3FAC1608322F960D47837500206D40106A0EE8ED89A06A0F1D40620D8A005840620D2A416E2D820D179D8A0C2E0D2BA045BC34B04E0D28406A0EF1404E0D256C820F1EAF2540760D280133605A0D2A0C0A0D2A002820003110F04E0D2A005A0D29EC0A0D29E02820040110604E0D29E06A0EFEC06A0F2BC02020C80C802F23E02020014C802F2560202005002000D000201D3FA0420FEF406A0E95800000300160BC820F23EF24E06A0EB5E000006A0F3440000000013F08820D256D468152211110720D256C820F270F2540760D27C130902020C40C802F23E0202000AC802F25610D20760D256C820F292F2540760D278130802020CC0C802F23E04C2C802F25610C204E0D29604E0D2C006A0ED1606A0E9900206D3FA045DC30B0760D27C131002000D00020120000420FEF002000C45020101000420FEF006A0E9580C40030002000D000201D174020200020420FEF405C00201D207D0B109820420FEF402000C8505C206C2D0420420FEF002000C450420FEF006A0E9580C8003000760D27C130406A0E9580C40030002000C8502014E000420FEF002000C450420FEF0045CC03B04D0C83BF352C30B04208344000006A0F63003ADD51506A0ECFC0760D284045CC34B04E0D2560760D280132E02030C80C820F36EF3BE02000014C800F3C005E0D29E06A0F2BC020400070205280002020050C803F3AEC803F3B802000D00C0450420FEF406A0E95800000300160906A0EB5E000006A0F3440000000013F3100402250050060416E90760D256160F0720D2560760D27C130A02030C40C820F3DAF3BE0200000AC800F3C010CD020801E0045D5446DDA0D176C30B
C:29  H:0 -
C14306A0EDF60205D44A06A0EE6A0004045CC30B0206D3FACDA0D464C14F06A0EDF60205D44A06A0EE6A0004DDA0D175045CC30BC14306A0EE6A0004DDA0D175045CC0C3110BDDA0D176C1030944DDA4D44E0243000FDDA3D44E045BDDA0D17A050310F1DDA0D19BC020D2A4131B0A100201D2A6D0B10760D18E130270A0D19C9802D1751A099802D19A1B06DD829802D19B1604DD821002DDA0D17E060016EADDA0D19B045BC30BC020D2A413120204D2A6C154DDA0D17606A0EDF60205D44A06A0EE6A00040600130405C4DDA0D17710F0045CC30B0200004E0201D050020200020420FEF4064018FC06A0F6300002D58B06A0F630000FD59706A0F630001BD5A206A0EA3C002A045CC03BC07BC0FB0202000A0420FEF402200009C8008356D09309820582C0430420FEF4045BC03BDDA0D175060016FC045BC03BC04006C0D8008C0206C002204000D8008C020221FC4002002000D8008C00058116FC045BC38B06A0F1D4C260F87E1352020F800002000C85020112000420FEF00200000DC800F1F804C4C0E4375020CF130CC5830206D40106A0EE8ED4A2C0E4300006A0F3FA06A0F1D40609130205C410EC06A0F1D402000C85020150000420FEF002000003C800F1F8C260F87E04C40206D3FACDA0D17402070009C0E4375020CF13020587100A40CFCD83DDA0D17AC0E4300006A0F3FEDDA0D1750609130605C4060716EB06A0F1D410E206A0F1D406A0F1D40206D3FACDA0D174C0E0F87E06A0F3FA06A0EE8ED58206A0F1D406A0F1D4045EC03BC0BB06C0D8008C0206C002204000D8008C02D8328C00D49216FC045BC80BD2B2C0CE024300300933C10E0244000FC163F6660455F66EF696F69CF6C20760D18813050760D28E1302DDA0D17F028400091204DDA0D17D0224FFF60224003006C4DD84045BDDA0D17410E906A0E60CC0CEDDA0D17806A0EE0EF6ACC1041306DDA0D17B06A0F66EDDA0D17CC2E0D2B2045BDDA0D17406A0F66EDDA0D17910F6C80BD2B2C0CE02430C000993C10E024403C0096410BDC80BD2B204C310B6C80BD2B204C310F3C30B06A0E97006A0F630000DD5C006A0EA3C005206A0F63000A2D5CE06A0EA3C0142045CC30B06A0F6300192D5F106A0F63001E5D60206A0F630020DD60D06A0F6300235D61806A0F630025DD62506A0F6300285D63006A0F63002ADD63D06A0F63002D5D64A06A0EE7E02E0D004045CC34B06A0E9700760D254161A06A0F6300009D6B806A0F6300052D54906A0F6300058D6CD06A0F6300066D55606A0F630006DD6CD06A0F7CED2C606A0F82E045D06A0F6300005D6D506A0F6300052D6F006A0F6300056D6CD06A0F6300066D6F506A0F7CED33E10E9C83BF7DEC30B020003370203003AC163D2C606A0EDF60201D44A020200040420FEF40220FFEC064318F2045CC34B06A0E970
C:31  H:0 -
06A0F4D406A0F63000CFD71706A0F6300197D72F06A0F63001E8D73E06A0F6300238D75706A0F6300288D76F045D020000A2D060D17A0202000D0420FEF00580060216FB020000B60202000E0420FEF00580060216FB020000F2D060D1760202001E0420FEF002200014060216FA045B00005A5A5A39000A001A5A5A03A800000720F870C820F874F87AC820F876F8A404C1C801F87E0206074E0202001AC120F87A0203000AC984375006460604060316FA06C4D120F87B060406C4060216F10760F870130904E0F870C820F878F8A4C820F872F87A10E10203FFFF020103A802023000CC83060116FD0380898FC0ED00060760D19216068803D26E1A1B8803D2701B18C820F87EF87E130D8820F87EF87C1310C0A0F87E04C188433000130A05C1060216FAC060F87E0A11C843300005A0F87E0380C0ED00060760D19216068803D26E1A0D8803D2701B0A04C1C0A0F87E130688433000130605C1060216FA04E0D2420380C8213750D242038006A0EC40D801D201020000020202D12B0203D210C802DCBEC803DCB8C803DCCA0720D284100204E0D284C33EC2AD0004C20A0A2AA30AC03CC31CC18009A6024003FFC240C04C0207D23B81C113050581D09C09820420FEF402860004120204CA1001070AC0860602A0890760D28413030420FE2E003404E0D284D820D28483740420FEF8D2C102011E00020800800420FEF00420FF040300000203000000D160837C160F060816F3D04B020800800420FEF00420FF04D160837C1603060816F710DFD04B0420FEF0D0608375DB4100020760D29A16039801D1A813719801D1AE13719801D1A91604C14006A0E90CC0059801D1A516040760D29A136110639801D1A213609801D1AC135D9801D1AD135A9801D1A013549801D1AA160482401352060010AE9801D1AB16048080134B058010A79801D19E1611C100C00206000420FEF805800420FEF00640810014F80580020120000420FEF010939801D19F1609C002020120000420FEF080091389060010FA9801D19D1611C1008080130805800420FEF806000420FEF0058010F6020120000420FEF0C004104A074A164A9801D1751A459801D19A1B420420FEF080801604DB60D1AE00021005058010380720D28403800760D29A16069801D1AE13039801D175112CC0090220FFFFC0C204C205800420FEF880C0150D9801D17513F8C100058205800420FEF880C015039801D17516F7C004DF20F973C04C0420FEFCC0C660C2130BA04202002000DC40060316FDC04CC009C0860420FEF403800460F9EE028130001AFB02813A001AB6028141001AF5028146001BF210AFC2BE04E0D28404E0D29A06A0F53A02D006A0EA3C02D2C26ADA7CC16ADA84C020D24002800004160504E5000206A0EFC81004075513020460FD2C0715C22ADA7EC1EADA80C1AA
C:33  H:0 -
DA82D0970982C04705810200034A0420FEF406A0F63002FAD79AC806FC2406A0F6300308000007650002130E06A0EE98D7A703B60760D28413020460FD620760D25813020460FD7204C2C0CA0204000A3C840222000704208340D9CC0760D28416ECC00705808810D17213EEC809FC7CC808FC7EC807FC8006A0F50A000000000000028A001416020460FD820420FE7400081606C809FC9C06A0EB5E000010D407250002074A131F06A0F630039AD7EC028A000A130706A0F6300016D5B206A0F090100906A0F630000AD5B2100406A0F630039AD8000420FE2E003404E0D2400720D29A038002030016C32D0010022CF92002000D000204002802020002024C07FF02012800A04C0420FEF405C005CC060416F506A0E9580CC00300160406A0EB5E0CC01091060316E410D1C809FD3406A0E9580000010006A0F630039AD814028A000A1308028A0014160906A0F6300016D5AE100406A0F630000AD5AE04D510BA06A0F53A039A06A0F630039AD7D810E7C809FD7A06A0E958000000001690108904E0D29C02000C81D060D1B30420FEF00420FE74000813060720D29C06A0E9580C80010002000C800201D1B0020200020420FEF406A0E9580C80000016130460FC94E5F1F2FBF4EBE9EAF6A2B3BBBAB8A2E4FBA2EFEBEEEEE7F4F5A2E9F4E3F2EAEBE5F506A0E9580C8001000760D29C160C02000C81D060D1AF0420FEF006A0E9580C8000000460FCA006A0EE98D82803BE0760D28416A40760D25816EA02000C81D060D1B20420FEF010E9FE20FE40FE64176C00500000000000000000C81B83E8C83E83ECC320200EC809200E02E083E00694C920FE34830205E0837304600060C120166C069402E0FE20C80C200E0380FE78FE78C30C161C02E083E0C1200050069402040011DB44040210040000000000000000DB6083E90402C160166CD81DFECF05E0FECE069502E0FE78020C2000058ED83E836D02039F00D8038400C0E083560223FFF80420FE2E0300D820FE7F8C02D8038C0253CCD0E088000953D74316032320837C1601F3CC0380FEF4FF14FEF4FF20FEF4FF30FEF4FF3CFEF4FF6CFEF4FF7E00000000000000000000000006A0FF4CD82D00028C00038006A0FF4C1304D83A8C00060C16FC038006A0FF52DB6088000002038006A0FF5213F6DEA08800060C16FC0380020A4000100104CAC31DD820FF0D8C02E30AD80C8C02C2AD0002C32D0004045BC31DD82D00018C02026C8000D80C8C02038002E083E0C80BFF0A06A0000E02E0FEF4C80B83F6038000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020020000201100004F0060116FD0200A00002012FF504F0060116FD0300000202E083E0042000008300FFD4
C:35  H:0 -
F96EF98E8320F8808320F8EE8320F936832083B4020F00200380C806FC2406A0F6300308000007650002130E06A0EE98D7A703B60760D28413020460FD620760D25813020460FD7204C2C0CA0204000A3C840222000704208340D9CC0760D28416ECC00705808810D17213EEC809FC7CC808FC7EC807FC8006A0F50A000000000000028A001416020460FD820420FE7400081606C809FC9C06A0EB5E000010D407250002074A131F06A0F630039AD7EC028A000A130706A0F6300016D5B206A0F090100906A0F630000AD5B2100406A0F630039AD8000420FE2E003404E0D2400720D29A038002030016C32D0010022CF92002000D000204002802020002024C07FF02012800A04C0420FEF405C005CC060416F506A0E9580CC00300160406A0EB5E0CC01091060316E410D1C809FD3406A0E9580000010006A0F630039AD814028A000A1308028A0014160906A0F6300016D5AE100406A0F630000AD5AE04D510BA06A0F53A039A06A0F630039AD7D810E7C809FD7A06A0E958000000001690108904E0D29C02000C81D060D1B30420FEF00420FE74000813060720D29C06A0E9580C80010002000C800201D1B0020200020420FEF406A0E9580C80000016130460FC94E5F1F2FBF4EBE9EAF6A2B3BBBAB8A2E4FBA2EFEBEEEEE7F4F5A2E9F4E3F2EAEBE5F506A0E9580C8001000760D29C160C02000C81D060D1AF0420FEF006A0E9580C8000000460FCA006A0EE98D82803BE0760D28416A40760D25816EA02000C81D060D1B20420FEF010E9FE20FE40FE64176C00500000000000000000C81B83E8C83E83ECC320200EC809200E02E083E00694C920FE34830205E0837304600060C120166C069402E0FE20C80C200E0380FE78FE78C30C161C02E083E0C1200050069402040011DB44040210040000000000000000DB6083E90402C160166CD81DFECF05E0FECE069502E0FE78020C2000058ED83E836D02039F00D8038400C0E083560223FFF80420FE2E0300D820FE7F8C02D8038C0253CCD0E088000953D74316032320837C1601F3CC0380FEF4FF14FEF4FF20FEF4FF30FEF4FF3CFEF4FF6CFEF4FF7E00000000000000000000000006A0FF4CD82D00028C00038006A0FF4C1304D83A8C00060C16FC038006A0FF52DB6088000002038006A0FF5213F6DEA08800060C16FC0380020A4000100104CAC31DD820FF0D8C02E30AD80C8C02C2AD0002C32D0004045BC31DD82D00018C02026C8000D80C8C02038002E083E0C80BFF0A06A0000E02E0FEF4C80B83F6038000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020020000201100004F0060116FD0200A00002012FF504F0060116FD0300000202E083E0042000008300FFD4
C:37  H:0 -
F96EF9948320FBBA8320F8EE8320F936832083B4020F00200380C806FC2406A0F6300308000007650002130E06A0EE98D7A703B60760D28413020460FD620760D25813020460FD7204C2C0CA0204000A3C840222000704208340D9CC0760D28416ECC00705808810D17213EEC809FC7CC808FC7EC807FC8006A0F50A000000000000028A001416020460FD820420FE7400081606C809FC9C06A0EB5E000010D407250002074A131F06A0F630039AD7EC028A000A130706A0F6300016D5B206A0F090100906A0F630000AD5B2100406A0F630039AD8000420FE2E003404E0D2400720D29A038002030016C32D0010022CF92002000D000204002802020002024C07FF02012800A04C0420FEF405C005CC060416F506A0E9580CC00300160406A0EB5E0CC01091060316E410D1C809FD3406A0E9580000010006A0F630039AD814028A000A1308028A0014160906A0F6300016D5AE100406A0F630000AD5AE04D510BA06A0F53A039A06A0F630039AD7D810E7C809FD7A06A0E958000000001690108904E0D29C02000C81D060D1B30420FEF00420FE74000813060720D29C06A0E9580C80010002000C800201D1B0020200020420FEF406A0E9580C80000016130460FC94E5F1F2FBF4EBE9EAF6A2B3BBBAB8A2E4FBA2EFEBEEEEE7F4F5A2E9F4E3F2EAEBE5F506A0E9580C8001000760D29C160C02000C81D060D1AF0420FEF006A0E9580C8000000460FCA006A0EE98D82803BE0760D28416A40760D25816EA02000C81D060D1B20420FEF010E9FE20FE40FE64176C00500000000000000000C81B83E8C83E83ECC320200EC809200E02E083E00694C920FE34830205E0837304600060C120166C069402E0FE20C80C200E0380FE78FE78C30C161C02E083E0C1200050069402040011DB44040210040000000000000000DB6083E90402C160166CD81DFECF05E0FECE069502E0FE78020C2000058ED83E836D02039F00D8038400C0E083560223FFF80420FE2E0300D820FE7F8C02D8038C0253CCD0E088000953D74316032320837C1601F3CC0380FEF4FF14FEF4FF20FEF4FF30FEF4FF3CFEF4FF6CFEF4FF7E00000000000000000000000006A0FF4CD82D00028C00038006A0FF4C1304D83A8C00060C16FC038006A0FF52DB6088000002038006A0FF5213F6DEA08800060C16FC0380020A4000100104CAC31DD820FF0D8C02E30AD80C8C02C2AD0002C32D0004045BC31DD82D00018C02026C8000D80C8C02038002E083E0C80BFF0A06A0000E02E0FEF4C80B83F6038000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020020000201100004F0060116FD0200A00002012FF504F0060116FD0300000202E083E0042000008300FFD4

 

And that code is definitely the object code... check out just the contents of the first track.

 

That's really interesting. Two copy protection methods. The first is the loader, which was partially on the two 1K sector track, and then the actual executable, which is on these tracks.

 

Track 11:

post-22866-0-99318100-1523134905_thumb.png

Link to comment
Share on other sites

I'm currently investigating on the Diskassembler issue. I extracted the read bytes from the MAME log. This is the image DSK that I produced from it.

 

Give me another day, and I can tell you how the loader works.

 

MAME can read the other two disks without problems; it is just the Diskassembler causing some trouble. I'm getting both 1024-byte sectors, having number 224 and 225. The second is the splash screen, the first is the second part of the loader. In particular, it contains the track read routine. Obviously, it is not satisfied with the result of the track reading; it retries 5 times, then exits.

 

All contents are on the disk image, both 1k sectors and the track contents.

disk.dsk

Edited by mizapf
  • Like 2
Link to comment
Share on other sites

The problem I had with Diskassembler restarting after reaching the dark blue screen (right before it should display the splash should display and begin reading tracks 11-37) was that my disk image was read-only. There is code in the loader that checks the middle 6 bits of the disk controller's status register and will clear out memory and restart the system if any are set. So, Diskassembler will not load if the disk is write-protected. After marking the file R+W, Diskassembler loaded and ran correctly.

  • Like 1
Link to comment
Share on other sites

How did you decode the track 11 (and others)? It seems as if my HFE decoder in MAME fails at that track, since I almost only get 1 bits, delivering FF as data. Maybe the rate is different? I believe it is not the WD177x emulation but rather this HFE module.

Link to comment
Share on other sites

The only address mark on the odd tracks is an Index address mark (FC). There is no ID address mark or any Data address marks. If it helps, here are the contents of the odd tracks in question:

C:11  H:0 -
0460DAAC0152200000000000000350494F0000000000000...

 

I don't get it. :(

 

I located the track 11 in the HFE file that I got from Jon, and the HFE data of track 11 starts like this:

 

00043a00: a228 1111 1111 1111 1111 1111 1111 1111  .(..............
00043a10: 1111 1111 1111 1111 1111 1111 1111 1111  ................
00043a20: 1111 1111 1111 1111 1111 1111 1111 1111  ................
00043a30: 1111 1111 1111 1111 1111 1111 1111 1111  ................
00043a40: 1111 1111 1111 1111 1111 1111 1111 1111  ................
00043a50: 1111 1111 1111 1111 1111 1111 1111 1111  ................
00043a60: 1111 1111 1111 1111 1111 1111 1111 1111  ................
00043a70: 1111 1111 1111 1111 1111 5544 1455 5555  ..........UD.UUU
00043a80: 5555 5555 5555 5555 5555 5555 5555 5555  UUUUUUUUUUUUUUUU
00043a90: 5555 5555 5555 5555 5555 5555 5555 5555  UUUUUUUUUUUUUUUU
00043aa0: 5555 5555 5555 5544 5415 5551 5511 1111  UUUUUUUDT.UQU...
00043ab0: 1111 1111 1111 1111 1111 1111 1111 1111  ................
00043ac0: 1111 1111 1111 1111 1111 1111 1111 1111  ................
00043ad0: 1111 1111 1111 1111 1111 1111 1111 1111  ................
00043ae0: 1111 1111 1111 1111 1111 1111 1111 1111  ................
00043af0: 1111 1111 1111 1111 1111 1111 1111 1111  .................

I started to believe that I had a bug in the decoding, but whatever trick I could apply, there is just not enough entropy in those first bytes to produce the beginning of the track as you showed.

 

This is the LUT. According to the specs this is a sequence of two shorts per cylinder in little-endian order, the position in 512 multiples, and the length in bytes.

 

00000200: 0200 e461 3300 e661 6400 e461 9500 e661  ...a3..ad..a...a
00000210: c600 e861 f700 e661 2801 e661 5901 e461  ...a...a(..aY..a
00000220: 8a01 e661 bb01 e661 ec01 e661 1d02 e661  ...a...a...a...a
00000230: 4e02 e461 7f02 e661 b002 e661 e102 e661  N..a...a...a...a
00000240: 1203 e661 4303 e661 7403 e661 a503 e661  ...aC..at..a...a
00000250: d603 e661 0704 e861 3804 e661 6904 e661  ...a...a8..ai..a
00000260: 9a04 e661 cb04 e661 fc04 e661 2d05 e661  ...a...a...a-..a
00000270: 5e05 e661 8f05 e661 c005 e661 f105 e661  ^..a...a...a...a
00000280: 2206 e661 5306 e661 8406 e861 b506 e661  "..aS..a...a...a
00000290: e606 e661 1707 e661 4807 e661 7907 e861  ...a...aH..ay..a

So I should be right to assume that track 11 starts at position 021d * 200 = 43a00 , length 61e6 (little endian). Then I'm getting the above data...

 

Edit: Attached the raw cylinder 11 contents from the HFE

track11.bin

Edited by mizapf
Link to comment
Share on other sites

 

I don't get it. [emoji20]

 

I located the track 11 in the HFE file that I got from Jon, and the HFE data of track 11 starts like this:

 

 

00043a00: a228 1111 1111 1111 1111 1111 1111 1111  .(..............00043a10: 1111 1111 1111 1111 1111 1111 1111 1111  ................00043a20: 1111 1111 1111 1111 1111 1111 1111 1111  ................00043a30: 1111 1111 1111 1111 1111 1111 1111 1111  ................00043a40: 1111 1111 1111 1111 1111 1111 1111 1111  ................00043a50: 1111 1111 1111 1111 1111 1111 1111 1111  ................00043a60: 1111 1111 1111 1111 1111 1111 1111 1111  ................00043a70: 1111 1111 1111 1111 1111 5544 1455 5555  ..........UD.UUU00043a80: 5555 5555 5555 5555 5555 5555 5555 5555  UUUUUUUUUUUUUUUU00043a90: 5555 5555 5555 5555 5555 5555 5555 5555  UUUUUUUUUUUUUUUU00043aa0: 5555 5555 5555 5544 5415 5551 5511 1111  UUUUUUUDT.UQU...00043ab0: 1111 1111 1111 1111 1111 1111 1111 1111  ................00043ac0: 1111 1111 1111 1111 1111 1111 1111 1111  ................00043ad0: 1111 1111 1111 1111 1111 1111 1111 1111  ................00043ae0: 1111 1111 1111 1111 1111 1111 1111 1111  ................00043af0: 1111 1111 1111 1111 1111 1111 1111 1111  .................

I started to believe that I had a bug in the decoding, but whatever trick I could apply, there is just not enough entropy in those first bytes to produce the beginning of the track as you showed.

 

This is the LUT. According to the specs this is a sequence of two shorts per cylinder in little-endian order, the position in 512 multiples, and the length in bytes.

 

00000200: 0200 e461 3300 e661 6400 e461 9500 e661  ...a3..ad..a...a00000210: c600 e861 f700 e661 2801 e661 5901 e461  ...a...a(..aY..a00000220: 8a01 e661 bb01 e661 ec01 e661 1d02 e661  ...a...a...a...a00000230: 4e02 e461 7f02 e661 b002 e661 e102 e661  N..a...a...a...a00000240: 1203 e661 4303 e661 7403 e661 a503 e661  ...aC..at..a...a00000250: d603 e661 0704 e861 3804 e661 6904 e661  ...a...a8..ai..a00000260: 9a04 e661 cb04 e661 fc04 e661 2d05 e661  ...a...a...a-..a00000270: 5e05 e661 8f05 e661 c005 e661 f105 e661  ^..a...a...a...a00000280: 2206 e661 5306 e661 8406 e861 b506 e661  "..aS..a...a...a00000290: e606 e661 1707 e661 4807 e661 7907 e861  ...a...aH..ay..a

So I should be right to assume that track 11 starts at position 021d * 200 = 43a00 , length 61e6 (little endian). Then I'm getting the above data...

 

Edit: Attached the raw cylinder 11 contents from the HFE

I think the HFE is ok; as DiskAssembler is running from the HFE on a HxC GoTek unit with a Corcomp controller. There’s no nice floppy noises on my GoTek, so I can’t really see it seek or anything.

 

But you are also right; doing a hex dump of the HFE doesn’t show the same bits. Maybe it’s the encoding translation?

 

https://youtu.be/3Gaafoe-HuQ

Link to comment
Share on other sites

 

Here's what the "raw ASCII" odd tracks look like in the HFE disk explorer. Note that even the HFE explorer can't show you the values because there's no "sector" to look at. Probably why the HxC software is identifying it as an Arburg encoding scheme. According to that web page, "This kind of floppy disks was pretty unreadable, even at the lowest level (using OmniFlop) because of their "tape-like" format, with no sector, no ID, no header, no CRC..."

 

Falcor, any insight into this? It's rather cool... goes beyond writing a regular sector into writing raw data with no format at all.

Hi Jon, my honey do list was long this weekend so in the interest of self preservation I've been working it down. So, briefly, I believe that what you're interested in looking for is in the WDS1.DSKASM.BUILD directory. Especially look at the code titled MAIN. If everything is still in there it is part of what should build a DiskAssember disk from the DD1-DD5 files that should be in your FNL041186 directory.

 

The main piece of information that got us tinkering with the disk formats was after I got a copy of the WD Storage Management Products handbook which has all the technical information for the WD177x, The Write Track function is a TYPE III command and from the book, "Data and gap information are provided by the computer interface" and "Normally whatever data pattern appears in the DATA REGISTER is written onto the disk with a normal clock pattern." The exceptions are patterns of >F5 or >FE which are interpreted as Data Address Marks with missing clocks or CRC generation. So, I just took that as I could write a continuous track with whatever data I wanted to put there and that's more or less what we did. As far as odd sectors, the controller allows 128, 256,512 and 1024 byte sectors so that's why you're seeing 1024 byte sectors as well, with some embellishments.

 

Change of subject, I saw in an earlier post that someone was upset that they couldn't copy their legally obtained copies of MG products. I mentioned this in an email to you, Jon, but I'll repeat it here as well. Craig and I talked about this type of protection for a long time debating what the reaction might be. It was decided to go ahead with it in the hopes that it would fend off piracy for at least a year. This was Craig'l livelihood. It didn't take that long....and some were rightfully upset over it. In retrospect, we may (I say may) have actually accelerated the proliferation of tools like track readers and hardware that allowed easy access to memory. It definitely sparked interest in some as to how we were doing it.

 

Sorry, I haven't been able to dig into this deeper for the moment. What I need to do is to duplicate my setup that I had back then to produce these products but I'm missing some hardware at the moment.

 

Hope this helps

Edited by FALCOR4
  • Like 5
Link to comment
Share on other sites

The Write Track function is a TYPE III command and from the book, "Data and gap information are provided by the computer interface" and "Normally whatever data pattern appears in the DATA REGISTER is written onto the disk with a normal clock pattern." The exceptions are patterns of >F5 or >FE which are interpreted as Data Address Marks with missing clocks or CRC generation. So, I just took that as I could write a continuous track with whatever data I wanted to put there and that's more or less what we did.

 

Yes, and what did you do in that cases with these bytes? Or could you avoid to write the special bytes?

 

The WD specs list these special bytes. When they are written into the data register of the controller during a Write Track operation, the following action takes place for FM (MFM has some different values):

 

00 - F4: Write that byte with normal clock

F5: not allowed

F6: not allowed

F7: Write the two resulting CRC bytes

F8,F9: Write Deleted Data Mark + preset CRC

FA,FB: Write DAM + preset CRC

FC: Write Index Address Mark

FD: normal

FE: Write IDAM

FF: normal

 

This is one of the reasons why you cannot simply create a track copier based on Read Track / Write Track.

 

The HDC9234 on the HFDC card offers another implementation of the Read Track / Write Track. In particular, it delivers the contents of all the sectors of the track, but no headers or gaps. The Write Track is a complete track formatter that takes arguments including the sector number sequence, and then creates the track on its own. For that reason it should be impossible to read these disks with a HFDC. It is possible, though, that the BwG and Corcomp controllers can read the disks, since they also use a WD chip.

 

If I understood correctly what I saw in the Diskassembler loader, the program adapts itself to these controller by inverting some locations in the code because the FD1771 has an inverted data bus.

Link to comment
Share on other sites

 

Yes, and what did you do in that cases with these bytes? Or could you avoid to write the special bytes?

 

The WD specs list these special bytes. When they are written into the data register of the controller during a Write Track operation, the following action takes place for FM (MFM has some different values):

 

00 - F4: Write that byte with normal clock

F5: not allowed

F6: not allowed

F7: Write the two resulting CRC bytes

F8,F9: Write Deleted Data Mark + preset CRC

FA,FB: Write DAM + preset CRC

FC: Write Index Address Mark

FD: normal

FE: Write IDAM

FF: normal

 

This is one of the reasons why you cannot simply create a track copier based on Read Track / Write Track.

 

The HDC9234 on the HFDC card offers another implementation of the Read Track / Write Track. In particular, it delivers the contents of all the sectors of the track, but no headers or gaps. The Write Track is a complete track formatter that takes arguments including the sector number sequence, and then creates the track on its own. For that reason it should be impossible to read these disks with a HFDC. It is possible, though, that the BwG and Corcomp controllers can read the disks, since they also use a WD chip.

 

If I understood correctly what I saw in the Diskassembler loader, the program adapts itself to these controller by inverting some locations in the code because the FD1771 has an inverted data bus.

 

 

Arrrr, I'm going to try this one more time. I keep losing my posts. We built routines that converted a word of data to two words of ASCII; this got around the problem with writing >F5 - >FF to the controller during track writes. That's probably what we did with the DiskAssembler but until I get all of my hardware back together I won't be able to recreate some of the things we were doing. Working on it. Attached are two subs; the first is from some disk production routines that convert a byte into two chars, the second is from one of the loaders that restores two word of chars into a word of data. Hope that helps.HEX ASCII conversion examples for track writers.txt

Edited by FALCOR4
  • Like 2
Link to comment
Share on other sites

OK, I see. Other ways to work around would be to do something like Base64, which means quite some more effort, or escaping. For example, to write a value >Fx, you would write >FF 0x, all other values directly.

 

Track copying (with sectors inside) can only be done in two passes, first format the track, then fill in the sector contents. If you are fast enough and order the sector contents by their interleave, this can be done in two revolutions of the drive (0.4 sec). In normal operation, the TI disk system is so slow on writing because it always writes one sector, then reads it again, which means you cannot get faster than 256 byte / 0.2 sec = 1280 byte/sec.

  • Like 1
Link to comment
Share on other sites

I really like your idea of escaping! That's a good scheme. One of the other reasons for taking the longer path of splitting the data and adding a bias to it, frankly, was to make it more confusing to decode if someone did use a track reader. The thinking at the time.

Link to comment
Share on other sites

If I remember correctly, didn't Mike Wright with PC99 write an article or two on Advanced Diagnostics and Diskassembler on how everything loaded with all the security. I thought he accomplished years ago making a PC99 disk of those programs.

 

Beery

Link to comment
Share on other sites

If I remember correctly, didn't Mike Wright with PC99 write an article or two on Advanced Diagnostics and Diskassembler on how everything loaded with all the security. I thought he accomplished years ago making a PC99 disk of those programs.

 

Beery

 

Would love to see the articles.

Link to comment
Share on other sites

Here's a fascinating 1995 Micropendium article about the copyright protection on SPAD XIII.

 

Mike Wright did disassemble this, and he believes Larry Hughes, formerly of QualitySoft Software wrote the protection. From what Tony Knerr (Gazoo) and Jim Fetzner have told me and discussed on the forum, he used some pretty nonstandard protection in the QS programs. The CALL LINK to "QS" is also a giveaway. I forget who I talked to who told me this, but someone learned how Larry protected his programs, approached him and said "Oh yeah, is this how you protected your program?" and Larry essentially told them "Yeah, and I'd appreciate it if you kept that to yourself." (It was either Anders or Bob Carmany, but I forget who...)

PC99 vs Red Baron.pdf

  • Like 2
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...