It is currently Thu Mar 28, 2024 7:56 am




 Page 2 of 2 [ 30 posts ]  Go to page Previous  1, 2
Author Message
 Post subject: Re: MyIDE II stress test
PostPosted: Wed Feb 20, 2013 10:37 am 

Joined: Thu Feb 05, 2004 10:34 am
Posts: 261
Location: NL
mr-atari wrote:
Sysop*Marius wrote:
I am 100% sure that there is something wrong, and I do not believe it is a defect in my MyIDE interfaces.

This is correct.

Now:
Try to produce the error WITHOUT MyBIOS.
With 8k flash as you suggest.

You can use the source found on the "old" MyIDE utility disk to access CF/IDE.

Perhaps I forgot to mention: I can now reproduce this strange phenomena.


It is a bit too hard for me to create such a routine.

In the meantime I found a cure on the Atari PCB to fix this. It is in the MMU.
When I burn a fresh MMU in a GAL 16V8B the problem does NOT occur. Never. Test is running for over an hour now: no problem.

As soon as I put back original XL MMU, problem is back within a minute (or a few minutes max).

Those MMU's are not bad for running the Atari as stock machine, but for some strange reason they become instable in this setting.
I'm wondering: could this be a problem of the aging of the MMU? Or is this is PAL<>NTSC thing (is there a difference between PAL MMU and NTSC MMU?)

Could this discovery lead to an idea of fixing this on the firmware of MyIDE ][?

I have NO XE computers in which this issue is happening. In the meantime I tested over 20 XE's. It only happens (here) on XL computers. I have no XE with MMU on socket. I am wondering what would happen when I put 'bad' MMU in XE.

Anyway... I am really positive it is a hardware issue now.
If someone is interested in MMU GAL JEDEC let me know.

Greetz
Marius


Offline
 Profile  
 
 Post subject: Re: MyIDE II stress test
PostPosted: Wed Feb 20, 2013 11:00 am 

Joined: Thu Feb 05, 2004 10:34 am
Posts: 261
Location: NL
here is jedecfile.

Program it in GAL 16V8 and replace it in your XL with issues.

(just for testing)

Would be great if this lead into conclusions for firmware upgrade.


There are images and/or files attached to this posting. You must be logged-in to view or download this content.


Offline
 Profile  
 
 Post subject: Re: MyIDE II stress test
PostPosted: Wed Feb 20, 2013 5:28 pm 

Joined: Thu Feb 05, 2004 10:34 am
Posts: 261
Location: NL
Ok

I'm a bit further (again!)

I can reproduce the issue now without MyBIOS. Even without doing CF-readings!!!!

1. Default Atari 800XL (with the problem MMU ofcourse)
2. MyIDE ][ interface with 8K rom assembler
3. No MYBIOS!!
4. Atari switches on, I select FAT32V20130110 to be able to load 8KROM (Assembler Editor will do)
5. with the assembler I manage this

BUG
CD50E<00 (LED GOES OFF)
CD50E<02 (LED GOES ON)
CD50E<03
DD50E
OK THIS RESULTS IN #$FF ... NICE

now I do this... just for some fun...

CD50C<FF
CD50D<0F

now I repeat this a few times:
DD50E

After a few times this results in a #$BF in stead of #$FF!

Sometimes it takes a while before you get his #$BF ... but eventually it will come.

*) I found out that the issues are most frequently happening when the 8K rom is located in SRAM. This issue 'can' also happen from Flash part, but than it happens not that much.


Offline
 Profile  
 
 Post subject: Re: MyIDE II stress test
PostPosted: Wed Feb 20, 2013 6:29 pm 

Joined: Thu Feb 05, 2004 10:34 am
Posts: 261
Location: NL
One VERY interesting experience!

I run BASIC.ROM from the FAT32V20130110 version.

Tried this in Basic:

10 D50E=54542
20 D50D=54541
30 D50C=54540
35 POKE D50C,255:POKE D50D,15
40 POKE D50E,0
60 POKE D50E,2
70 GOSUB 1000
80 POKE D50E,3
110 ? PEEK(D50C),PEEK(D50D),PEEK(D50E):GOTO 40
999 END
1000 FOR T=0 TO 300:NEXT T:RETURN

RUN


And with a result like this (which will be different each time)
(D50C D50D D50E)
255 255 255
255 255 255
255 255 255
255 255 255
255 191 255
255 255 255
255 255 191
255 191 191
255 255 255

Incredible... D50D and D50E sometimes read out #$BF.

Later I also put D50F in this reading, and that one also reads out #$BF from time to time.

so $d50d, $d50e and $d50f are disturbed on the Atari's with MMU issue.


Offline
 Profile  
 
 Post subject: Re: MyIDE II stress test
PostPosted: Wed Feb 20, 2013 10:09 pm 
ERROR AT LINE 0
User avatar

Joined: Tue Aug 05, 2003 9:55 am
Posts: 1042
Location: Cleveland, Ohio
Do the same program but delete lines 40, 60 and 80.

Are the results still variant?

Steve


Offline
 Profile  
 
 Post subject: Re: MyIDE II stress test
PostPosted: Thu Feb 21, 2013 3:40 am 

Joined: Thu Feb 05, 2004 10:34 am
Posts: 261
Location: NL
(I never thought I would ever use my datarecorder again; since I do not use a dos at all now, I am happy that I still can save and load)

I removed the lines, but then immidiately all registers switch back to #$BF (191).

So I changed to code into this:

10 D50E=54542
20 D50D=54541
30 D50C=54540
35 POKE D50C,255:POKE D50D,15
40 POKE D50E,0
60 POKE D50E,2
70 GOSUB 1000
80 POKE D50E,3
110 ? PEEK(D50C),PEEK(D50D),PEEK(D50E):[b]GOTO 110[/b]
999 END
1000 FOR T=0 TO 300:NEXT T:RETURN


The results are now:

255 255 255
255 255 255
255 255 255
255 255 255
255 255 255
255 255 255
191 191 191
191 191 191
191 191 191

So I do not have a real conclusion which register is dropping first. (It's due to basic slowness that is impossible to tell this way which register ($d50x) is the first to drop bit 6. The only thing this shows is that it is happening indeed.

Let's summarize everything so far:

This issue (locking CF card) happens the most as soon as these conditions are true:
1. MyIDE ][ interface
2. Having a 8K ROM inside SRAM BANK* #$00 located on Atari $a000-bfff
3. NO right cartridge (disabled in $d50f)
4. SRAM keyholes set to R/W (=default)
5. SRAM keyhole page = $0FFF (set in $D50C/$D50D)
6. Atari 800XL with certain type of old MMU
7. problem MMU is NOT causing trouble in 600XL** (!) or XE computers.
8. problem MMU is causing trouble in 800XL*** that worked fine before
9. new MMU (burned in GAL) fixes issue in 800xl.

*) The issue also occurs from time to time when 8KRom is inside Flash part of cart. But this happens not that much. (the issue is especially there with rom in Sram)

**) took problem MMU and put it inside 600XL. No issues here. The 600XL was expanded with the 1064 expansion module. I could try this with basic on flash and 16K mode. But since the issue does not happen that frequent on Flash, it's hard to tell how reliable that test would be.

***) I must have a 800XLF somewhere. I think that on the 800XLF the 'problem' MMU will not cause this issue. Unfortunately everything is soldered on board and I do not want to spoil my mainboard (yet).


Offline
 Profile  
 
 Post subject: Re: MyIDE II stress test
PostPosted: Thu Feb 21, 2013 4:07 am 

Joined: Thu Feb 05, 2004 10:34 am
Posts: 261
Location: NL
Running new test now:

I'm investigating which keyhole page setting ($d50c/d50d) is also causing trouble. So far the only page that results in issues is the very last sram page $0fff). Running test in basic; so this will take a while.

So far none errors found.

Keep you all informed.


Offline
 Profile  
 
 Post subject: Re: MyIDE II stress test
PostPosted: Thu Feb 21, 2013 6:22 am 

Joined: Thu Feb 05, 2004 10:34 am
Posts: 261
Location: NL
OK ... there is a pattern ...

I took the myide with the most issues, and I inserted this one in the atari with the most issues.
The reason I did this, is that I wanted to be sure that the issue would happen. Later I checked this with 'better' combinations. I still came at same result, but it took longer to get issue happening. So, I think this pattern is right...

D50C and D50D are used to set SRAM keyhole page. This is a 16bit address.
Whether the 'issue' with the locking CF card happens or not, depends on which keyhole sram 'page' is set on this 16 bit address. I have checked this and I found this result.

Important to know: the 'higher' the 16 bit address the sooner the issue occurs. On the lower range the issue happens in rare occasions. All 'addresses' between the addresses in the list, do not give issues ($016B gives issues, $016C does not, $016D gives issues etc.)


$00xx -> no issues at all in this entire region $0000 - $00FF
$016B issues
$016D issues
$016F issues (etc.)
$017B
$017D
$017F
$01EB
$01ED
$01EF
$01FB
$01FD
$01FF
$02xx -> no issues at all in this entire region $0200 - $02FF
$036B
$036D
$036F
$037B
$037D
$037F
$03EB
$03ED
$03EF
$03FB
$03FD
$03FF
$04xx -> no issues at all in this entire region $0400 - $04FF
$056B
$056D
$056F
$057B
$057D
$057F
$05EB
$05ED
$05EF
$05FB
$05FD
$05FF
hmmm from now on no more error free regions...
$066B
$066D
$066F
$067B
$067D
$067F
$06EB
$06ED
$06EF
$06FB
$06FD
$06FF
...till the end this pattern repeats now
$0F6B
$0F6D
$0F6F
$0F7B
$0F7D
$0F7F
$0FEB
$0FED
$0FEF
$0FFB
$0FFD
$0FFF


I did not find the energy to add all 'binary' conversions for these numbers, but I guess you (steve) will see the pattern too without this addition.

Well... that was it for now ;)
Greetz
M.

p.s. I forgot to mention that on this combination still the official diagnose tests do not give a single problem. Not in SRAM not in CF card area.


Offline
 Profile  
 
 Post subject: Re: MyIDE II stress test
PostPosted: Thu Feb 21, 2013 10:23 am 
User avatar

Joined: Sun Nov 02, 2003 8:15 am
Posts: 1549
Location: netherlands
I can produce it, but also not.

OK, you have to test this for yourself (when you are home).
Just load ASSEMBLER using your fat-loader.
enter the debugger and change the display to constantly show D500-D516.
C 9C3A<46,0,D5
This will give a bottom line with the registers mentioned.
Now powerup the CF.
C D50E<0
C D50E<2
C D50E<3
You see
! 0________________
Now the screen is pulling data from D500-D516 constantly with 50 or 60Hz)
Change keyhole to $FFF
C D50C<FF,F
All is stable, for hours long.
!=NO ERROR, 0 = STATUS OK.



Now when you change any register @ D5xx it will lock-up.
For example do C D508<0 (several times).
Eventually it will lockup showing
______________________ (in 2 colors > FF BF FF)



You can even get data out of the CF.
Example: C D507<EC
The identify-command.
Sends 256 bytes to the first space in the bottom-line, takes about 5 seconds.


Offline
 Profile  
 
 Post subject: Re: MyIDE II stress test
PostPosted: Thu Feb 21, 2013 10:34 am 

Joined: Thu Feb 05, 2004 10:34 am
Posts: 261
Location: NL
Hey Sijmen,

Could you write a little test routine that does those steps in a routine?

And then compare this:

The routine just the way it is (so it reproduces the error)

The routine exact the way it is, but then with screen output switched off (poke 559,0)

In my situation (in Basic) this results in zero errors.
With screen back on again (poke 559,34) the errors are back.


Offline
 Profile  
 
 Post subject: Re: MyIDE II stress test
PostPosted: Thu Feb 21, 2013 10:55 am 

Joined: Thu Feb 05, 2004 10:34 am
Posts: 261
Location: NL
mr-atari wrote:
All is stable, for hours long.
!=NO ERROR, 0 = STATUS OK.

That is my experience too. As long as nothing happens in Atari, it does not drop bit 6 of $d50e.

Just like this:
LOOP LDA $D50E
     AND #$40
     BNE LOOP
     JMP ERROR


But... as soon as there is more going on (like keyboard interrupt, or sending a lot of data to screen), the problem occurs.

Quote:
Now when you change any register between D508-D50F it will lock-up.
For example do C D508<0 (several times).
Eventually it will lockup showing
______________________ (in 2 colors > FF BF FF)



Does this also happen when you do something complete different? I think this does not occur due to changing the registers between D508-D505, but simply due to the fact you are typing away on your keyboard. If you make that change in a routine, D50E will still keep it's correct value.


Offline
 Profile  
 
 Post subject: Re: MyIDE II stress test
PostPosted: Thu Feb 21, 2013 2:04 pm 

Joined: Thu Feb 05, 2004 10:34 am
Posts: 261
Location: NL
It's what I thought...

As soon as you touch the keyboard it happens.

Try this:

          LDA #$FF
          STA $D50C
          LDA #$0F
          STA $D50D
          LDA #$00
          STA $D50E
          JSR PAUSE
          LDA #$02
          STA $D50E
          JSR PAUSE
          LDA #$03
          STA $D50E
          LDA #$07 ; OK THE CHECKING WILL NOW RUN IN A VBI
          LDX /VBI
          LDY #VBI
          JSR $E45C
          RTS
PAUSE     LDX #$00
          LDY #$00
.1        INX
          BNE .1
          INY
          BNE .1
          RTS
VBI       LDA $D50E
          AND #$40
          BEQ ERROR
          JMP $E462
ERROR LDA #$00 ; SIMPLY VERIFY; BLACK SCREEN MEANS ERROR
          STA $02C6
          JMP $E462


As soon as you run this, D50E will not drop bit 6. As long as you do not touch the keyboard. As soon as you go typing on the keyboard, and do things (like a list in assembler), it goes wrong.

In my setup, only touching the spacebar was enough to get a black screen btw.

Edit: and if the screen does not turn black, it helps to do a heavy listing. During the screen output, the screen will eventually turn black. I added two lines after the 'BEQ ERROR' line now. I added LDA #$80 STA $02C6. This is a fabulous debugging mechanism. When $d50E bit 6 reads 1 again, the screen is blue again. Blue = ok, black = error.


Offline
 Profile  
 
 Post subject: Re: MyIDE II stress test
PostPosted: Fri Feb 22, 2013 3:23 am 
User avatar

Joined: Sun Nov 02, 2003 8:15 am
Posts: 1549
Location: netherlands
The message is clear and understood.
There are issues with MyIDE-][ under certain situation.

Steve and I are working hard on this and we need our time to investigate and test.
Since this issue is so weird, this takes much longer then our usual reply.

In the meantime our advice will be to avoid these certain situations until we solved it.
We do have a social life and are not behind our Atari typing away 24/7.

Thanks.


Offline
 Profile  
 
 Post subject: Re: MyIDE II stress test
PostPosted: Sun Feb 24, 2013 2:31 am 
ERROR AT LINE 0
User avatar

Joined: Tue Aug 05, 2003 9:55 am
Posts: 1042
Location: Cleveland, Ohio
There is an experimental hardware update to address this now. If anyone is effected by this particular bug and would like to test it out please e-mail classics@atarimax.com.

The Maxflash USB Programmer is required to do the JTAG hardware programming.

Steve


Offline
 Profile  
 
 Post subject: Re: MyIDE II stress test
PostPosted: Tue Feb 26, 2013 3:46 am 
User avatar

Joined: Sun Nov 02, 2003 8:15 am
Posts: 1549
Location: netherlands
Hi Steve,

Thanks for the update, it works great for me :)

Later!
Sijmen.


Offline
 Profile  
 
Display posts from previous:  Sort by  
 Page 2 of 2 [ 30 posts ]  Go to page Previous  1, 2


Who is online

Users browsing this forum: No registered users and 35 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  

cron