[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Any utility to convert TrackStar board emulator Disk images to Emulator image files??



"Gerald Ryckman" <geraldryckman@hotmail.com> wrote in message
3a4a177d.0404300631.405603eb@posting.google.com">news:3a4a177d.0404300631.405603eb@posting.google.com...

> I played with this a year ago and haven't touched it since:
>
> Each image contains 40 tracks, each 0x1A00 bytes long.  The format is
> as follows:
>
> 1A00 Next track
> 19fE WORD containing the number of nibbles in the track or 0
> .
> .    Nibble data backwards
> .
> 0080 start of nibble data
> 0000 Contains trackstor description
>
>
> If the the word at 19fE is 0 start reading backward at 19FD till
> you hit a nibble where the high bit is 0.

Ok, this I didn't know about.

> Here is quick and dirty code that I added to Applewin to read app
> disks.
> (You will have to add a little more code to hook it up)
>
>
/**************************************************************************
**
> *
> *  NIBBLIZED Trackstar(APP) 40 Track FORMAT IMPLEMENTATION
> *
> ***/
>
>
//=========================================================================
==
> DWORD AppDetect (LPBYTE imageptr, DWORD imagesize) {
>   return (imagesize == 266240) ? 2 : 0;
> }
>
>
> BYTE AppScratch[0x1a00];
>
>
//=========================================================================
==
> void AppRead (imageinfoptr ptr, int track, int quartertrack, LPBYTE
> trackimagebuffer, int *nibbles) {
>   WORD TrackStart;
>   int nibcount=0;
>   BYTE *pNib;
>   SetFilePointer(ptr->file,ptr->offset+track*0x1a00,NULL,FILE_BEGIN);
>   ReadFile(ptr->file,AppScratch,0x1a00,(DWORD *)nibbles,NULL);
>
>   TrackStart = *(WORD *)&AppScratch[0x1a00-2];
>
>   if (TrackStart)
>   {
> TrackStart+=0x80;
> pNib=&AppScratch[TrackStart];
>   }
>   else
>   {
> pNib=&AppScratch[0x1a00-3];
>   }
>
>   while (*pNib & 0x80)
>   {
> *trackimagebuffer++= *pNib--;
> nibcount++;
>   }
>
>   *nibbles = nibcount;
> }
>

Thanks for the code.  I'll compare it with mine to see what I did wrong.

> You can add a write routine similarly.  A dsk2app utility should be
> similar.  I have one somewhere if it is needed. I had pretty good luck
> reading unprotected disks with the Trackstar.  Some copy protected
> disks worked as well. I also reverse engineered parts of the Trackstar
> software.  The Trackstar E software will work with older versions of
> the Trackstar hardware with minor modifications. It is a pretty cool
> piece of software/hardware.

> I have been looking for a Trackstar E for quite a while.  If anyone
> wants to sell me one or talk about the Trackstar feel free to send me
> mail.

Sorry, I can't help you.  I've never even seen a Trackstar (E or
otherwise).

Charlie