Page 2 of 2

Re: FDC cookie

Posted: 02 Jan 2020 15:46
by PaulJ
Very nice, I like the 1.44HD disk as used on the falcon. This will provide a good access point to exchange files with.
Nice work @exxos ,@Icky :thumbup: :thumbup: :thumbup:

Re: FDC cookie

Posted: 02 Jan 2020 16:37
by rubber_jonnie
Doesn't TOS look for a specific bridged jumper on the STE in order to enable HD floppy support in TOS 2.06? I know it doesn't mean you can use HD floppies without the MOD, but maybe it requires a hardware jumper and not just the cookie setting in order to work?

Just my random thoughts.

Re: FDC cookie

Posted: 02 Jan 2020 16:39
by exxos
@rubber_jonnie we have that jumper emulated in hardware, so it is set, only that register is never access for some reason..

Re: FDC cookie

Posted: 02 Jan 2020 20:23
by rubber_jonnie
@exxos Ah, ok I see. Could there be something that is specifically STE related which means it won't work?

Re: FDC cookie

Posted: 02 Jan 2020 21:02
by exxos
So exxos got pi**ed off and did a binary hack in the OS...


:twisted: :twisted: :twisted:

2.JPG


Had a small side-effect :lol: :roll:

Capture.JPG

But for my first hack I think I did pretty well :lol:

Re: FDC cookie

Posted: 02 Jan 2020 21:30
by Icky
:bravo: - This has been eating away at you and me this last week. More you than me :wink:

At least its tracked down that its never going to work with the DIP switch settings on an STF as its also machine type specific i.e. STE

Re: FDC cookie

Posted: 02 Jan 2020 21:45
by exxos
@Icky Yeah, the source is a mess! it seems to be literally checking for a STE machine.. I haven't yet quite followed exactly how it is doing that yet.. But I did not want to fake a STF machine as a STE anyway.. is more curiosity than anything... I will go snoop now actually...

EDIT:

Code: Select all

#if (TOSVERSION < 0x300) | TP_50
			move.b    #90,(v_bas_l).w           /* write low byte of video address */
			tst.b     (v_bas_m).w               /* access the medium byte */
			move.b    (v_bas_l).w,d0            /* (which should reset the low byte on an STE!) */
			cmp.b     #90,d0                    /* reset? */
			bne.s     nostedetect               /* yes => STE detected */
			clr.b     (v_bas_l).w               /* clear the low byte again */
			tst.w     (palette).w               /* access the color palette */
			tst.b     (v_bas_l).w
nostedetect:
            sne       STEFlag               /* <>0 => no STE hardware available */
#else
        sf        STEFlag
#endif

Something to do with the video address register then :shrug: Also looks like after that code it checks for DMA sound as well.