Jump to content

Photo

XEL-I3 Incognito Addressed IDE/CF Interface for 1088XEL

IDE CF Incognito XEL

181 replies to this topic

#51 flashjazzcat OFFLINE  

flashjazzcat

    Quadrunner

  • 12,517 posts
  • Location:United Kingdom

Posted Thu Jun 15, 2017 3:25 AM

BTW: if you want to implement the ATR swap button in the finished part, you'll need bit 6 of $D384 latched whenever the button has been pressed. The PBI BIOS will check this on every SIO transfer and clear it automatically. Bit 7 on the Incognito means "button enabled", the idea being that it's ignored if bit 7 = 0. As I said: all the button logic is stripped out of the custom ROM at the moment since it hangs the system (the BIOS clears bit 6 and reads it back until it's clear).

I notice the PBI message only appears if the HDD is enabled, which isn't exactly the behaviour I described earlier. I might change so it displays all the time, since it's relevant to HSIO and the Z: handler as well as the hard disk.

Just thinking: if you chose to make a version of this device which sat - say - under the CPU of a standard machine, it would probably go like hot-cakes as an internal version of SIDE (enabling use of the cart port alongside the HDD).

Edited by flashjazzcat, Thu Jun 15, 2017 3:26 AM.


#52 mytekcontrols OFFLINE  

mytekcontrols

    Stargunner

  • Topic Starter
  • 1,920 posts
  • Location:Santa Rosa, CA

Posted Thu Jun 15, 2017 8:18 AM

Hi Jon,

Thank you for working with me on this project, and I'll be testing the latest firmware you uploaded in an hour or two (just woke up, feeding the furry grandkids, and need to take a quick shower before heading over to the shop). Starting to sound like this will be the version that works, so I got my fingers crossed.

Interesting suggestion about the swap button. I hadn't even considered doing something like that, but I will look into it as a future possibility.

The CPU piggyback version also sounds intriguing, definitely have to think about that as well.

- Michael

#53 mytekcontrols OFFLINE  

mytekcontrols

    Stargunner

  • Topic Starter
  • 1,920 posts
  • Location:Santa Rosa, CA

Posted Thu Jun 15, 2017 2:26 PM

Jon sorry I took so long to get back to you on your latest PBI firmware changes.

 

And now for what you have been waiting for... SUCCESS!!!  :rolling:

 

 

Now I just need to figure out the best way to get the on-board HDD Activity LED working.

 

- Michael



#54 flashjazzcat OFFLINE  

flashjazzcat

    Quadrunner

  • 12,517 posts
  • Location:United Kingdom

Posted Thu Jun 15, 2017 2:44 PM

And now for what you have been waiting for... SUCCESS!!!  :rolling:


That's great news! :) Really cheered me up since my soldering iron just died and while I should have a replacement handle by the weekend, I have a feeling the whole station is on its last legs. That's cheap 2-in-1s for you, but it's all I could afford.

Anyway: since it's possible I'll be out of action for a while, there's no better time to properly reorganise the PBI ROM sources and make the changes I mentioned earlier. :)

PS: The Incognito driver will take about five seconds to time out if there's no card present, and since there's no IDE alternate status register, we can't detect the card via a hardware reset of the IDE controller. Same thing applies with the XEL I3, with the added possibility of the adapter being absent. Perhaps a shorter polling timeout will improve matters.


Edited by flashjazzcat, Thu Jun 15, 2017 3:02 PM.


#55 mytekcontrols OFFLINE  

mytekcontrols

    Stargunner

  • Topic Starter
  • 1,920 posts
  • Location:Santa Rosa, CA

Posted Thu Jun 15, 2017 3:07 PM

That's great news! :) Really cheered me up since my soldering iron just died and while I should have a replacement handle by the weekend, I have a feeling the whole station is on its last legs. That's cheap 2-in-1s for you, but it's all I could afford.

Anyway: since it's possible I'll be out of action for a while, there's no better time to properly reorganise the PBI ROM sources and make the changes I mentioned earlier. :)

 

I was pretty frickin happy myself when I saw it work for the first time  :)

 

So your soldering iron's failure might end up being my blessing  :thumbsup:  (although I'm sorry you need to go spend more money to make it right  :( ). So does this mean I'll see a working loader coming up fairly soon?  ;)

 

As for the PBI code, I thought about the swap button aspect you mentioned, and it really isn't something I can practically add. For one thing the address isn't able to be decoded with the signals provided on the XEL's MPBI port. And I know I'll get some grief for saying this, but I don't see it as a necessity that warrants adding the extra circuitry and having to tie into other off-port signals.

 

- Michael



#56 flashjazzcat OFFLINE  

flashjazzcat

    Quadrunner

  • 12,517 posts
  • Location:United Kingdom

Posted Thu Jun 15, 2017 3:22 PM

I quite understand re: button. It's really only useful for rotating disk sets mid-session, and you can rotate them in software (via the loader), so it's not a deal breaker. I'll purge all references to the button from your next build. Of course we then get into the territory of the button option in the main BIOS being redundant. :)

Loader should be easy enough. Might as well tackle that over the weekend. Brought my old Antex iron out of retirement (still works after five years) so was at least able to finish what I was doing tonight.

#57 mytekcontrols OFFLINE  

mytekcontrols

    Stargunner

  • Topic Starter
  • 1,920 posts
  • Location:Santa Rosa, CA

Posted Thu Jun 15, 2017 3:45 PM

I quite understand re: button. It's really only useful for rotating disk sets mid-session, and you can rotate them in software (via the loader), so it's not a deal breaker. I'll purge all references to the button from your next build. Of course we then get into the territory of the button option in the main BIOS being redundant. :)

Loader should be easy enough. Might as well tackle that over the weekend. Brought my old Antex iron out of retirement (still works after five years) so was at least able to finish what I was doing tonight.

 

I'll be 'Incognito' for the next 3 days, so no rush. Just grateful for what you have done thus far, which makes this new CF board usable.

 

- Michael



#58 mytekcontrols OFFLINE  

mytekcontrols

    Stargunner

  • Topic Starter
  • 1,920 posts
  • Location:Santa Rosa, CA

Posted Thu Jun 15, 2017 6:15 PM

HDD ACTIVITY LED FIX

 

I went on-line to find a solution to making the Activity LED on the IDE/CF adapter I was using in my project work. I did find something, but it was a fix for an entirely unrelated reason. So I came up with my own solution.

 

So what was the problem...

 

Apparently the designer thought it would be nice to buffer the /DASP line coming out of the CF Card with the use of a two NPN transistor circuit (simple buffer). The problem is that it appears that the wrong transistors were used in my batch of adapter boards. So reading up on the specs for this signal output, it appears that it is rated for 20 ma, more than sufficient to directly drive the LED, especially considering that it has a 1K pull-up resistor to +5 V. So my solution was to jumper across this circuit (no removal of parts required).

 

MFepT7S.jpg

 

 

And here is a video showing it in action...

 

 

- Michael


Edited by mytekcontrols, Thu Jun 15, 2017 6:16 PM.


#59 mytekcontrols OFFLINE  

mytekcontrols

    Stargunner

  • Topic Starter
  • 1,920 posts
  • Location:Santa Rosa, CA

Posted Sat Jun 17, 2017 12:54 AM

Product Off-Shoot is Now Planned

Thanks to FJC's suggestion, I will be creating a CPU piggyback board for non-XEL A8 computers that will give them a MPBI port. In this way MPBI devices created for the XEL will also plug in and work in all of the A8 computer series, thus acting as a bridge interface of sorts between all different model series. This alternative MPBI will be missing a couple of signals that can't be easily derived from the CPU alone, but those signals are noncritical in nature and likely won't be missed (i.e., not needed by the XEL-I3 for one). So soon you will have SIDE functionality in any U1MB upgraded A8 without hogging the cartridge port.

- Michael

Edited by mytekcontrols, Sat Jun 17, 2017 12:58 AM.


#60 Kyle22 OFFLINE  

Kyle22

    River Patroller

  • 3,004 posts
  • Location:McKees Rocks (Pittsburgh), PA

Posted Sat Jun 17, 2017 1:31 AM

Thank you Michael, that is awesomely great. :)



#61 flashjazzcat OFFLINE  

flashjazzcat

    Quadrunner

  • 12,517 posts
  • Location:United Kingdom

Posted Sat Jun 17, 2017 2:40 AM

Yes: insanely great. Gotta get one of those in at least one machine.

#62 DrVenkman OFFLINE  

DrVenkman

    River Patroller

  • 2,095 posts
  • Back off, man! I'm a scientist.
  • Location:KMBT

Posted Sat Jun 17, 2017 7:08 AM

Product Off-Shoot is Now Planned

Thanks to FJC's suggestion, I will be creating a CPU piggyback board for non-XEL A8 computers that will give them a MPBI port. In this way MPBI devices created for the XEL will also plug in and work in all of the A8 computer series, thus acting as a bridge interface of sorts between all different model series. This alternative MPBI will be missing a couple of signals that can't be easily derived from the CPU alone, but those signals are noncritical in nature and likely won't be missed (i.e., not needed by the XEL-I3 for one). So soon you will have SIDE functionality in any U1MB upgraded A8 without hogging the cartridge port.

- Michael

 

This is gonna be one of those "TAKE MY MONEY!" products. :)

 

Actually, while I am at it, would it be possible to include a little header on there for U1MB signals (like on the Adaptus board) so solderless U1MB installation is possible? 



#63 mytekcontrols OFFLINE  

mytekcontrols

    Stargunner

  • Topic Starter
  • 1,920 posts
  • Location:Santa Rosa, CA

Posted Sat Jun 17, 2017 7:33 AM

This is gonna be one of those "TAKE MY MONEY!" products. :)
 
Actually, while I am at it, would it be possible to include a little header on there for U1MB signals (like on the Adaptus board) so solderless U1MB installation is possible?


Oh yes great idea! Consider it done.

- Michael

#64 mytekcontrols OFFLINE  

mytekcontrols

    Stargunner

  • Topic Starter
  • 1,920 posts
  • Location:Santa Rosa, CA

Posted Sat Jun 17, 2017 9:44 AM

More on this CPU/MPBI piggyback board...

While I'm at it, and since I'll have a 74HCT08 on board to buffer the PH2 signal, I can also use one of the extra gates in that chip to add the 1200XL /EXTSEL circuit. For other systems that already have this signal, and to implement a more complete MPBI spec this and the /CI (Cas Inhibit) will need to be acquired off board. However the XEL-I3 IDE/CF Interface does not require these signals, so that can be skipped for that instance.

There will also be a 74HCT138 on board to mirror the decoding of the one on the motherboard in order to breakout the required /CS outputs to the MPBI connector.

Important Note: There will need to be one mandatory solder connection made, and that is to pick up the MMU I/O line (MMU pin 7). So unfortunately it isn't going to be a completely solder-less installation (but pretty close to it).

- Michael

Edited by mytekcontrols, Sat Jun 17, 2017 9:55 AM.


#65 flashjazzcat OFFLINE  

flashjazzcat

    Quadrunner

  • 12,517 posts
  • Location:United Kingdom

Posted Sun Jun 18, 2017 11:45 AM

As promised, I added an extra build target for the PBI BIOS and loader so XEL-I3 versions can be produced as easily as the others. No way to test these here, so I hope the PBI still works and that the loader works too:

 

Attached File  XEL-I3.zip   17.72KB   11 downloads

 

To ensure the new assembly conditionals didn't break existing targets, I've run diffs on all builds and they're identical. The XEL-I3 PBI BIOS now also reports its proper title in the boot message and also in DISKINFO (see the APT programming docs on my website), and has a unique hardware ID ($10).

 

Any problems, give me a shout. Should be easy enough to fix. Once the XEL-I3 PBI and loaded are certified working, I'll release this update for U1MB/SIDE and Incognito. There's also a main BIOS update not included here. ;)

 

 



#66 mytekcontrols OFFLINE  

mytekcontrols

    Stargunner

  • Topic Starter
  • 1,920 posts
  • Location:Santa Rosa, CA

Posted Sun Jun 18, 2017 5:12 PM

As promised, I added an extra build target for the PBI BIOS and loader so XEL-I3 versions can be produced as easily as the others. No way to test these here, so I hope the PBI still works and that the loader works too:

 

attachicon.gifXEL-I3.zip

 

To ensure the new assembly conditionals didn't break existing targets, I've run diffs on all builds and they're identical. The XEL-I3 PBI BIOS now also reports its proper title in the boot message and also in DISKINFO (see the APT programming docs on my website), and has a unique hardware ID ($10).

 

Any problems, give me a shout. Should be easy enough to fix. Once the XEL-I3 PBI and loaded are certified working, I'll release this update for U1MB/SIDE and Incognito. There's also a main BIOS update not included here. ;)

 

The new PBI code works great, but I can't get UFLASH to accept the XLOAD file. Gives me a "INVALID FILE SIGNATURE" message. I figure it's probably something very minor.

 

- Michael



#67 flashjazzcat OFFLINE  

flashjazzcat

    Quadrunner

  • 12,517 posts
  • Location:United Kingdom

Posted Sun Jun 18, 2017 5:23 PM

The new PBI code works great, but I can't get UFLASH to accept the XLOAD file. Gives me a "INVALID FILE SIGNATURE" message. I figure it's probably something very minor.


That's odd: I tested the flash here to ensure that wouldn't happen. You can disable signature checks in UFLASH to get around this anyway.

#68 mytekcontrols OFFLINE  

mytekcontrols

    Stargunner

  • Topic Starter
  • 1,920 posts
  • Location:Santa Rosa, CA

Posted Sun Jun 18, 2017 6:00 PM

That's odd: I tested the flash here to ensure that wouldn't happen. You can disable signature checks in UFLASH to get around this anyway.

 

Ok I just had something happen that is very odd. I verified that UFLASH didn't recognize the signature once again, and then went into Options and disabled it, after which I could get past the warning, but then I got another warning as follows: "Short File was 4KB, expected 16KB"

 

What's very odd, is that the file size is 16,384 according to SDX and makeATR.

 

So I tried loading the ULOAD129 ROM (what I originally was running) and all went well.

 

Any idea of what might be happening?

 

- Michael



#69 mytekcontrols OFFLINE  

mytekcontrols

    Stargunner

  • Topic Starter
  • 1,920 posts
  • Location:Santa Rosa, CA

Posted Sun Jun 18, 2017 6:45 PM

To add to this. I tried re-downloading the ROM(s) zip file, re-extracted the individual ROMs, used makeATR to transfer to my SDX work disk, booted up with SIO2PC-USB through RespeQt, and then tried once again to get this ROM file to load via UFLASH. Result: No Change.

 

Next I changed the transfer speed from divisor zero to the normal 57600(3x) setting in RespeQt to see if corruption was occurring due to a too high of a transfer speed, but still the same problems when trying to load xload132. So one last thing I did was I also told UFLASH to ignore short files and this time I was able to load the file, only problem is it doesn't work and gives me a black screen every time I try to invoke the loader.

 

- Michael



#70 flashjazzcat OFFLINE  

flashjazzcat

    Quadrunner

  • 12,517 posts
  • Location:United Kingdom

Posted Sun Jun 18, 2017 7:29 PM

Yikes. I got a nice clean flash here with default settings and the loader ran and timed out on disk access as expected (there being no IDE hardware at the expected address). Maybe the version of UFLASH I'm using is a bit newer; I'll upload it later. Most recent release is from the BIOS pack released last December?

#71 mytekcontrols OFFLINE  

mytekcontrols

    Stargunner

  • Topic Starter
  • 1,920 posts
  • Location:Santa Rosa, CA

Posted Sun Jun 18, 2017 8:29 PM

Hi Jon  :)  You hit it on the nose... yes my UFLASH was a bit too dated (September 2016). Once I got the latest off your website all was ok, no more fussing with disabling signatures, and no more warnings  :thumbsup:

 

Made a quick video showing a few tests...

 

 

So far so good  :thumbsup:  :)

 

Thanks a bunch for getting this done so quickly. I'll Be testing it more into this coming week and be sure to report back to you on how things are going. But for the moment it's looking real solid.

 

- Michael


Edited by mytekcontrols, Sun Jun 18, 2017 8:33 PM.


#72 flashjazzcat OFFLINE  

flashjazzcat

    Quadrunner

  • 12,517 posts
  • Location:United Kingdom

Posted Mon Jun 19, 2017 6:25 AM

That's great news. Better test with cartridges at some point. Disabling the ATR swap button should ensure carts remain accessible when the HDD is enabled.

 

PS: I reduced the IDE timeout to some 2 seconds so booting with the HDD enabled without the adapter/CF card present should no longer hang up the system for 5 seconds.


Edited by flashjazzcat, Mon Jun 19, 2017 6:26 AM.


#73 mytekcontrols OFFLINE  

mytekcontrols

    Stargunner

  • Topic Starter
  • 1,920 posts
  • Location:Santa Rosa, CA

Posted Mon Jun 19, 2017 7:13 AM

That's great news. Better test with cartridges at some point. Disabling the ATR swap button should ensure carts remain accessible when the HDD is enabled.

 

PS: I reduced the IDE timeout to some 2 seconds so booting with the HDD enabled without the adapter/CF card present should no longer hang up the system for 5 seconds.

 

I'll be sure to check those things as well.

 

- Michael



#74 mytekcontrols OFFLINE  

mytekcontrols

    Stargunner

  • Topic Starter
  • 1,920 posts
  • Location:Santa Rosa, CA

Posted Mon Jun 19, 2017 11:40 AM

I reduced the IDE timeout to some 2 seconds so booting with the HDD enabled without the adapter/CF card present should no longer hang up the system for 5 seconds.

 

I ran a test on this today, but apparently it still hangs for quite awhile...

 

However other than that, everything else still looking good including no problems thus far with cartridges (did some testing with the Basic XL cart in place and reading and writing to the CF).

 

- Michael



#75 mytekcontrols OFFLINE  

mytekcontrols

    Stargunner

  • Topic Starter
  • 1,920 posts
  • Location:Santa Rosa, CA

Posted Mon Jun 19, 2017 11:48 AM

Improved Basic Test program to verify IDE Drive (or Compact Flash card)...
 

5 IDEPRNT=500:REM IDE PRINT ROUTINE
10 IDE=53728:REM IDE BASE ADDRESS
15 RST=4:REM RESET COMMAND
20 DPARM=224:REM DRIVE PARAMETERS
25 FEAT=239:REM SET FEATURE COMMAND
30 ID=236:REM IDENTIFY COMMAND
35 REM ----- DRIVE SET-UP -----
40 POKE IDE+7,RST
50 POKE IDE+6,DPARM
60 POKE IDE+1,1:REM 8-BIT MODE
70 POKE IDE+7,FEAT
80 POKE IDE+7,ID
85 REM ----- MAIN PROGRAM LOOP -----
90 FOR X=0 TO 255:DLSB=PEEK(IDE):DMSB=PEEK(IDE)
100 IF X=10 THEN ? "S/N: ";
110 IF X>9 AND X<20 THEN GOSUB IDEPRNT
115 IF X=23 THEN ? :? "REVISION: ";
116 IF X>22 AND X<27 THEN GOSUB IDEPRNT
120 IF X=27 THEN ? :? "MODEL   : ";
130 IF X>26 AND X<47 THEN GOSUB IDEPRNT
135 IF X=48 THEN ? 
140 NEXT X
150 END 
500 REM ----- PRINT ROUTINE -----
510 ? CHR$(DMSB);
520 ? CHR$(DLSB);
5320 RETURN

Basic File: Attached File  IDETEST.BAS   925bytes   8 downloads

I learned how to enable 8-Bit Addressing mode, and implemented this in the latest test program. Currently this is set-up to query an XEL-I3 through the MPBI at a base address of $1DE0. However by changing the base address equate in line 10, this routine will work with other IDE hardware.
 
More Info on Accessing CF card data via 8-Bit mode
 
- Michael

Attached Files


Edited by mytekcontrols, Mon Jun 19, 2017 12:21 PM.






Also tagged with one or more of these keywords: IDE, CF, Incognito, XEL

0 user(s) are browsing this forum

0 members, 0 guests, 0 anonymous users