English Amiga Board Amiga Lore


Go Back   English Amiga Board > Support > support.WinUAE

 
 
Thread Tools
Old 12 February 2014, 16:28   #21
Toni Wilen
WinUAE developer
 
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 42
Posts: 19,662
A4091 + NetBSD5 bug fixed (Forgot to fix A4091 addressing when I fixed A4000T). Z3 fast RAM conflict fixed.

IMHO install disk are only useful for users that don't know how to use standard hdtoolbox (or any other standard partitioning program)
Toni Wilen is offline  
AdSense AdSense  
Old 12 February 2014, 17:03   #22
amilo3438
Amiga 500 User
 
Join Date: Jun 2013
Location: EU
Posts: 1,116
Quote:
Originally Posted by Toni Wilen View Post
IMHO install disk are only useful for users that don't know how to use standard hdtoolbox (or any other standard partitioning program)
Yes, but it also upgrades certain AmigaDOS files -> check on pic. attached below:
Attached Thumbnails
Click image for larger version

Name:	Clipboard02.png
Views:	130
Size:	4.5 KB
ID:	38997  
amilo3438 is offline  
Old 12 February 2014, 18:23   #23
Toni Wilen
WinUAE developer
 
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 42
Posts: 19,662
Quote:
Originally Posted by amilo3438 View Post
Yes, but it also upgrades certain AmigaDOS files -> check on pic. attached below:
Probably only if you have old (pre 3.0 or 3.1?) setup. My crystal ball says they are only some MMU/caching related changes.
Toni Wilen is offline  
Old 16 February 2014, 09:15   #24
Toni Wilen
WinUAE developer
 
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 42
Posts: 19,662
Quote:
Originally Posted by mark_k View Post
I've created a 16MB hardfile which shows the problem.
Unfortunately my A4091 seems to be dead. Grey screen hang if device is connected to A4091 (Tested with real old SCSI drive and ACard SCSI IDE adapter). Without drives connected A4091 appears in early boot menu expansion lists and does not hang.

I tried all jumper setting combinations (termination, id, disable sync mode and so on.). No change, connected drive's led never flickers even once.

Tested on A3000 and A4000, both have rev11 Buster. Both devices work on A3000's internal SCSI.

I'll check boot ROM contents later, perhaps it has flipped bits. (It is 27C256 EPROM)

EDIT: ROM contents match 100% A4091 40.13 ROM image.

Last edited by Toni Wilen; 16 February 2014 at 09:36.
Toni Wilen is offline  
Old 16 February 2014, 12:43   #25
mark_k
Registered User
 
Join Date: Aug 2004
Location:
Posts: 2,518
Oh dear.

Were you using an active terminator at the end of the SCSI chain (even if there was only one device + the A4091 in the chain)? Maybe it's very picky about termination?

It might still be possible to do some testing; in WinUAE Debian hangs/crashes when detecting the A4091 even with no drives attached. You could try copying the HDF to an IDE drive and booting from that. How useful that will be depends on what's wrong with your A4091, I guess.
mark_k is offline  
Old 16 February 2014, 15:32   #26
Toni Wilen
WinUAE developer
 
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 42
Posts: 19,662
ACard has active termination, real drive probably had passive only. No effect if off or on.

Booted from IDE and saw some NCR driver error messages but they scrolled too quickly out of screen. (This does not prove anything because card may be broken and emulation does not detect invalid SCRIPTS instructions, real NCR53C710 generates illegal instruction interrupt)

btw, A4091 driver is stupid, you get 2xscsi.device if you also have drive in IDE port.. (A4000T creates "NCR scsi.device", apparently A4091 does not..)
Toni Wilen is offline  
Old 16 February 2014, 19:30   #27
mark_k
Registered User
 
Join Date: Aug 2004
Location:
Posts: 2,518
Testing with 2.7.1b8 now. Something a little strange...

I'm testing with an A4000T config and NetBSD HDF. With the config (attached) I can boot it (i.e. the initial netbsd: prompt appears). Load config, click start, it boots.

However if I load the config, double-click the HDF entry in CD & Hard drives panel then change the SCSI ID (to SCSI6 say), on starting emulation the HDF doesn't boot (purple insert disk screen). Changing SCSI ID back to 0 and clicking Reset, it still doesn't boot.

In contrast, if I load the config, click start so it boots, then change SCSI ID and click reset, it still boots successfully with the new SCSI ID.
Attached Files
File Type: zip NetBSD_install_A4000T_040.uae.zip (3.0 KB, 36 views)
mark_k is offline  
Old 16 February 2014, 20:09   #28
Toni Wilen
WinUAE developer
 
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 42
Posts: 19,662
It is as simple as SCSI IDs 4-6 not working at all.

SCSI ID number to bit fields conversion was not complete. NCR710 uses bits internally (for example SCSI ID 4 = 1<<4 = 16) but NCR720+ uses normal ID numbers (ID 4 is 4)

ID switch on the fly most likely does nothing, at least without Restart button.

EDIT: Should be fixed now.

Last edited by Toni Wilen; 16 February 2014 at 20:28.
Toni Wilen is offline  
Old 16 February 2014, 20:56   #29
mark_k
Registered User
 
Join Date: Aug 2004
Location:
Posts: 2,518
Great.

When you have both A2091 and A4091 enabled, is there any way to choose which controller the SCSI0-SCSI6 HDFs use?
mark_k is offline  
Old 16 February 2014, 22:06   #30
mark_k
Registered User
 
Join Date: Aug 2004
Location:
Posts: 2,518
I tested NetBSD 1.3.3 with an A4000/040/A4091 config. I get an error message
Phase mismatch: REQ not asserted! 00 dsp 412c0c0
After printing that twice the boot process hangs.

Edit to add: NetBSD 1.6.2 has same problem. NetBSD 2.1 boots okay.
Attached Thumbnails
Click image for larger version

Name:	NetBSD1.3.3_A4091.png
Views:	118
Size:	7.3 KB
ID:	39059  
Attached Files
File Type: zip NetBSD_1.3.3_A4000_040_A4091.uae.zip (2.9 KB, 36 views)

Last edited by mark_k; 16 February 2014 at 22:14.
mark_k is offline  
Old 17 February 2014, 09:27   #31
Toni Wilen
WinUAE developer
 
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 42
Posts: 19,662
Quote:
Originally Posted by mark_k View Post
When you have both A2091 and A4091 enabled, is there any way to choose which controller the SCSI0-SCSI6 HDFs use?
I thought about this but decided to not support it yet.

It will introduce config combinations that are more harder to solve (because code is not modularized enough), like A3000 with internal SCSI and A2091.
Toni Wilen is offline  
Old 17 February 2014, 13:48   #32
mark_k
Registered User
 
Join Date: Aug 2004
Location:
Posts: 2,518
A couple more NetBSD information points:

NetBSD 1.0 doesn't seem to detect A4000T SCSI. The A4000T on-board SCSI just wasn't supported in NetBSD 1.0 I think. It does detect A4091 but booting fails, with this line shown over and over:
waiting: tgt 0 cmd 00 sbcl 00 dsp 40b5068 (+0) dcmd 0 ds 5bb028

NetBSD 1.1 boots with either A4000T or A4091 SCSI. There's a warning message saying REQ not asserted! which doesn't seem fatal. Interestingly though, it seems NetBSD 1.1 didn't work (or had some problem or other) on a real A4000T, at least according to this posting to the port-amiga mailing list from February 1996.
Attached Thumbnails
Click image for larger version

Name:	NetBSD_1.0_A4091.png
Views:	91
Size:	6.0 KB
ID:	39065   Click image for larger version

Name:	NetBSD_1.1_A4091.png
Views:	85
Size:	7.9 KB
ID:	39066  
Attached Files
File Type: zip NetBSD_1.0_1.1_A4000_A4091_configs.zip (6.0 KB, 35 views)
mark_k is offline  
Old 17 February 2014, 18:15   #33
Toni Wilen
WinUAE developer
 
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 42
Posts: 19,662
Quote:
Originally Posted by mark_k View Post
A couple more NetBSD information points:

NetBSD 1.0 doesn't seem to detect A4000T SCSI. The A4000T on-board SCSI just wasn't supported in NetBSD 1.0 I think. It does detect A4091 but booting fails, with this line shown over and over:
waiting: tgt 0 cmd 00 sbcl 00 dsp 40b5068 (+0) dcmd 0 ds 5bb028
There is no reads or writes to A4091 board addresses. None whatsoever.. So I guess it must be some autoconfig bug (like assuming >=$40000000 address, not UAE faked smaller one)

Quote:
NetBSD 1.1 boots with either A4000T or A4091 SCSI. There's a warning message saying REQ not asserted! which doesn't seem fatal. Interestingly though, it seems NetBSD 1.1 didn't work (or had some problem or other) on a real A4000T, at least according to this posting to the port-amiga mailing list from February 1996.
REQ not asserted is harmless, debugging test only. It checks SBCL NCR register and tests if REQ bit is set. (SBCL contains raw realtime SCSI bus signal status bits, this is not emulated, register is mainly meant for diagnostics)

I found the CVS change that mentions A4000T but I don't see any A4000T specific changes, only some generic 53C710 driver changes.
Toni Wilen is offline  
Old 17 February 2014, 20:40   #34
mark_k
Registered User
 
Join Date: Aug 2004
Location:
Posts: 2,518
Quote:
Originally Posted by Toni Wilen View Post
There is no reads or writes to A4091 board addresses. None whatsoever.. So I guess it must be some autoconfig bug (like assuming >=$40000000 address, not UAE faked smaller one)
Strange. I looked at afsc.c and siop.c, and while there are quite a lot of differences between the NetBSD 1.0 and 1.1 versions of those files, it looks like the NetBSD 1.0 afscattach() calls siopinitialize() which calls siopreset(), which looks like it does write to the chip registers.
mark_k is offline  
Old 18 February 2014, 16:49   #35
Toni Wilen
WinUAE developer
 
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 42
Posts: 19,662
Quote:
Originally Posted by mark_k View Post
Strange. I looked at afsc.c and siop.c, and while there are quite a lot of differences between the NetBSD 1.0 and 1.1 versions of those files, it looks like the NetBSD 1.0 afscattach() calls siopinitialize() which calls siopreset(), which looks like it does write to the chip registers.
I think the real question is: Where does the device base address come from and is it correct?
Toni Wilen is offline  
Old 18 February 2014, 18:30   #36
mark_k
Registered User
 
Join Date: Aug 2004
Location:
Posts: 2,518
Aha.

In NetBSD 1.0, sys/arch/amiga/dev/zthreebus.c has this in the zthreeattach() function:
Code:
/*
 * check that its from zorro III space
 * (board type = Zorro III and not memory)
 */
if ((cdp->rom.type & 0xe0) != 0x80)
	continue;
za.va = (void *)(iszthreepa(za.pa) ?
    zthreemap(za.pa, za.size) : 0);
iszthreepa is defined in sys/arch/amiga/dev/zthreebusvar.h:
Code:
#define ZTHREEBASE	(0x40000000)
#define ZTHREETOP	((u_long)0x80000000)
...
#define iszthreepa(pa) ((u_int)(pa) >= ZTHREEBASE && (u_int)(pa) <= ZTHREETOP)
Comparing with the NetBSD 1.1 source, while iszthreepa is still defined it isn't used. Code corresponding to the NetBSD 1.0 zthreeattach() is now zbusattach() in zbus.c:
Code:
/*
 * check if it's a Zorro II or III board and not linked into
 * MemList (i.e. not a memory board)
 */
if ((cdp->rom.type & 0xe0) != 0xc0 &&
    (cdp->rom.type & 0xe0) != 0x80)
	continue;	/* er_Type != Zorro I/O */

za.pa = cdp->addr;
za.size = cdp->size;
if (amiga_realconfig && pcp < epcp && pcp->vaddr)
	za.va = pcp->vaddr;
else {
	za.va = (void *) (isztwopa(za.pa) ? ztwomap(za.pa) :
	    zbusmap(za.pa, za.size));
mark_k is offline  
Old 19 February 2014, 18:07   #37
Toni Wilen
WinUAE developer
 
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 42
Posts: 19,662
Quote:
Originally Posted by mark_k View Post
Code:
#define iszthreepa(pa) ((u_int)(pa) >= ZTHREEBASE && (u_int)(pa) <= ZTHREETOP)
Bleh.

"Non-hack" Z3 board addresses will be possible someday (in non-JIT modes only, of course)
Toni Wilen is offline  
Old 19 February 2014, 19:26   #38
Toni Wilen
WinUAE developer
 
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 42
Posts: 19,662
"Fixed".. If natmem area is large enough (address 0x40000000-0x41000000 is inside it and it is unused), A4091 is moved to 0x40000000

Seems to work exact same as with NetBSD 1.1. Same messages.
Toni Wilen is offline  
Old 19 February 2014, 19:48   #39
mark_k
Registered User
 
Join Date: Aug 2004
Location:
Posts: 2,518
I checked the 2014-02-19 18:23 winuae.exe with my NetBSD 1.0 HDF. I get the same messages as the NetBSD 1.0/A4091 screenshot above (so the boot process hangs at that point). Do I need to manually set the natmem area large enough?
mark_k is offline  
Old 19 February 2014, 19:55   #40
Toni Wilen
WinUAE developer
 
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 42
Posts: 19,662
Quote:
Originally Posted by mark_k View Post
I checked the 2014-02-19 18:23 winuae.exe with my NetBSD 1.0 HDF. I get the same messages as the NetBSD 1.0/A4091 screenshot above (so the boot process hangs at that point). Do I need to manually set the natmem area large enough?
It probably means Wine won't give WinUAE enough virtual address space (0x40000000 is 1G which is probably also impossible under 32-bit Windows too)

Check winuaebootlog.txt, it says "Reserved: xxx"
Toni Wilen is offline  
AdSense AdSense  
 


Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools

Similar Threads
Thread Thread Starter Forum Replies Last Post
Pcd-50b SCSI Card Reader with A4000T LUNS Problem crazyegg support.Hardware 2 10 February 2013 19:01
For Sale: Cyberstorm Mk2 060 + 128MB RAM + SCSI II Module + 18GB SCSI Drive Zetr0 MarketPlace 9 27 June 2012 22:41
The scsi interface metc vs squirrel scsi conflict rampartsagain support.Hardware 29 24 June 2012 17:50
WTB - SCSI Cable Blizzard MkIV SCSI - 50Pin fitzsteve MarketPlace 1 30 August 2010 23:10
Blizzard 1260 & SCSI Kit - 1230.scsi upgrade question Tommo1975 support.Hardware 0 14 August 2010 19:43

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT +2. The time now is 04:11.


Powered by vBulletin® Version 3.8.8 Beta 1
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Page generated in 0.43148 seconds with 13 queries