21 May 2013, 08:51 | #41 |
WinUAE developer
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 49
Posts: 26,575
|
Try resetting after it hangs and also changing immediate blitter options. Amix does something weird at startup that hangs sometimes. (ROM and SCSI setup is fine, kernel is loaded because MMU page size line is logged)
|
21 May 2013, 16:51 | #43 |
WinUAE developer
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 49
Posts: 26,575
|
Oops. b10 update "Added hack that prevents incorrectly triggering CIA alarm interrupts in non-cycle exact modes due to not that good KS timer.device code. (It did not cause any problems, just wasted some emulated CPU time)" seems to confuse the loader or A3000 scsi driver. (It still could work in some specific configuration, not sure)
Looks like no one tested Amix after it started working in very early betas.. This problem does not seem to affect NetBSD or Linux. |
22 May 2013, 15:29 | #44 |
Registered User
Join Date: Nov 2008
Location: Melbourne, Australia
Posts: 89
|
@mark_k,
I'm using the exact config file(s) from earlier in the thread (I tried both of the ones posted). The only change I made was the location of the "amix.img" HD image. I've tried it with WinUAE v2.6.0, 2.6.0b9 and 2.6.0b21 and all behave the same - a flicker of HD activity, then nothing - just a blank screen and CPU at around 80%. Cheers, Mike. |
22 May 2013, 17:24 | #45 |
WinUAE developer
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 49
Posts: 26,575
|
I debugged it more and above update isn't the problem. It hangs because KS ROM uses CIAB alarm interrupt for timing stuff but Amix does not disable it early enough after taking over the system.
After system has been taking over, alarm interrupt will trigger in 13 frames (due to CIA TOD bug) and hangs the system because at this point Amix level 6 interrupt handler does nothing. (Clears INTREQ but does not read CIABICR) I noticed these hangs randomly during 2.6.0 betas but reseting and trying again usually "fixed" it. Then later changes that moved SCSI and IDE to separate thread changed timing too much and broke Amix completely. This image shouldn't work on real hardware either unless this HDF has different loader or buggy version or something.. Or perhaps there are CIA chips that don't have TOD bug but at least my A500 has exact same 8520A-1 label as my A3000 and A500 CIA does have the bug. (Non-buggy versions are also highly unlikely because surface mount version and Akiko internal CIAs are also confirmed to have same TOD bug) CIA TOD bug = http://eab.abime.net/showthread.php?t=26213 |
22 May 2013, 20:19 | #46 |
Registered User
Join Date: Aug 2004
Location:
Posts: 3,351
|
Hmmm. It probably isn't relevant, but on booting the amix.img HDF there is some HD LED activity before the system hangs. However if I then do a Ctrl-A-A reset, the system hangs again, but this time without any HD LED activity.
|
22 May 2013, 20:23 | #47 |
WinUAE developer
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 49
Posts: 26,575
|
It is bug in SCSI emulation, it hangs if emulation is reset while WD SCSI chip interrupt flag is set. Amix triggers this when it hangs because level 6 interrupt prevents all lower level interrupts.
|
23 May 2013, 04:55 | #48 |
Registered User
Join Date: Nov 2008
Location: Melbourne, Australia
Posts: 89
|
Interesting info... Any idea why some other users have managed to get it to work? Can those lucky users let me know what WinUAE version and KS ROM image they were using? Cheers, Mike.
|
27 May 2013, 15:17 | #49 |
Registered User
Join Date: Aug 2004
Location:
Posts: 3,351
|
The amix.img HDF does boot for me with WinUAE 2.6.0b9, fails with 2.6.0b12. That's using the 37.175 A3000 ROM.
With later WinUAEs I did try enabling "genlock connected" to see if that would help booting, but it didn't. (CIA B TOD counts at half rate with genlock connected, but I guess the ROM timer code takes that into account.) |
28 May 2013, 03:29 | #50 | |
Registered User
Join Date: Nov 2008
Location: Melbourne, Australia
Posts: 89
|
Hi there,
Thanks for the extra info... I can confirm that this combination (2600b9 & KS 37.175) works for me too - using the previously posted winuae config files and amix.img hard disk image. I just get stuck at the login-prompt now! Does anyone know what the username/password is? (amigaunix.com seems to be down atm). Cheers, Mike. Quote:
|
|
28 May 2013, 12:23 | #51 |
Registered User
Join Date: Aug 2004
Location:
Posts: 3,351
|
|
08 June 2013, 22:16 | #52 | |
Zone Friend
Join Date: Oct 2002
Location: England
Posts: 30
|
Quote:
|
|
12 June 2013, 16:28 | #53 |
WinUAE developer
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 49
Posts: 26,575
|
Weird. Something unknown must prevent too early CIA alarm interrupt from happening..
2.6.1 betas (and 2.6.1 final too) will have workaround. |
12 June 2013, 20:02 | #54 |
Zone Friend
Join Date: Oct 2002
Location: England
Posts: 30
|
It's notable that the HD image on amigaunix.com that doesn't seem to work is Amix 1.1, while the installer images there are for 2.01, 2.03 and 2.1, with a patch disk up to 2.1c - this would suggest some sort of bug that got fixed in later Amix versions.
|
20 June 2013, 11:06 | #55 |
WinUAE developer
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 49
Posts: 26,575
|
Does anyone have OLD SCSI tape command documentation? (It may not have "Tape" in name, it may be also named sequential or streaming scsi commands)
It must be written before SCSI-3 was introduced. It is too new if any 16-byte command is documented, for example READ(16). I'd like to implement simple scsi tape emulation which allows full Amix installation EDIT: Especially READ CAPACITY is important. Other SCSI documentation says it is not mandatory for Sequential devices but Amix installer simply crashes if tape drive does return unknown command error.. If it returns result, installer thinks it is hard drive.. EDIT2: This is now solved. Tape drives don't support READ(10), drive is not detected as HD if READ(10) returns unknown command. Last edited by Toni Wilen; 20 June 2013 at 12:56. |
20 June 2013, 13:00 | #56 |
WinUAE developer
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 49
Posts: 26,575
|
Minimal tape emulation works now. Next problem:
I only get "cpio: Bad header - checksum error", "cpio: Not a cpio file, bad header." when using TOSEC tape zip file (UNIX System V Release 4 Amiga Version 2.03 Installation Tape (1991)(Commodore-Amiga)(A2500-A3000UX).zip) files. Does anyone know if files inside zip are in original format? What is order of files in original tape? EDIT: http://amigaunix.com/ answered all my questions. Last edited by Toni Wilen; 20 June 2013 at 13:22. |
20 June 2013, 13:44 | #57 |
Registered User
Join Date: Aug 2004
Location:
Posts: 3,351
|
I don't have the TOSEC zip files (yet) so can't comment on them specifically. Could you post a listing of the zip file?
Some general tape drive points: - Logically, a tape consists of an arbitrary sequence of data blocks and filemarks. Each data block can be any length (subject to limitations of the drive and/or SCSI card etc.). The SCSI standard allows block length up to 16MB. - Typically, a file is stored as a contiguous sequence of data blocks, followed by a filemark to indicate end-of-file. Usually all blocks in the file would be the same size. To indicate the end of recorded data (i.e. end of the last file) it's common for applications to write two filemarks, but that isn't required. - Block size is important. If you write a file to tape using the wrong block size, a program which tries to read it using smaller read commands will fail. With the Amix tape however, judging from strings in the installation program, the installer would work with any block size up to 256KB. I did dump the files from my Amix tape many years ago, but back then I didn't know much about tape drives so can't say for sure what block size(s) the Amix installation tape uses. But it's not critical. The first file which the installer reads might have a different block size. What commands does the installer initially issue to the tape drive? That would give you an upper bound on the actual block size used. (E.g. if program issues a variable-length READ command with size 32KB, it expects the data block length to be 32KB or less.) I don't have the files I dumped myself handy right now, but I do have an "AMIXTAPE.zip" file. The first file on the tape is a cpio archive containing a plain text file which describes the rest of the files. The order of the remaining files on the tape is as given there. Judging by the sizes of files in the AMIXTAPE.zip archive, all are multiples of 512 bytes. So most probably files on the AMIX tape were written using 512-byte blocks. Code:
pkg=core size=22620 name="Amiga Unix essential components" pkg=bsd size=3404 name="Berkeley compatiblity package" pkg=Cdev size=21220 name="C Development system" pkg=lp size=4482 name="Lp print spooler" pkg=man size=14032 name="On-line manual pages" pkg=net size=6300 name="Networking commands and daemons" pkg=public size=10062 name="Public domain utilities" pkg=sysadm size=13402 name="System administration utility" pkg=terminfo size=4772 name="Support for non-Amiga terminals" pkg=text size=3280 name="Text processing tools" pkg=uucp size=1570 name="Uucp networking software" pkg=Xcore size=16958 name="X Window System essential components" pkg=Xbasic size=11020 name="X Window System basic components" pkg=olcore size=8468 name="Open Look" pkg=Xtras size=14806 name="X extras" opt=y pkg=Xdev size=5184 name="X Window System development tools" opt=y pkg=oldev size=3468 name="Open Look development tools" opt=y pkg=conf size=6378 name="Kernel configuration package" opt=y pkg=emacs size=11948 name="GNU Emacs editor" opt=y pkg=games size=4672 name="Games" opt=y pkg=amigasrc size=2650 name="Amiga source code" zcat=y opt=y pkg=pubsrc size=112732 name="Public domain source code" zcat=y opt=y |
20 June 2013, 14:21 | #58 |
WinUAE developer
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 49
Posts: 26,575
|
Yeah, I need to know if the tape has multiple files (with filemark between them) and the order of files. Block size has to be 512 because Amix always uses 4 block read commands (same from HD too) and DMAC is programmed for 2048 byte transfers.
Your file listing does not match http://amigaunix.com/ downloadable tape image (it only has 9 files), also amigaunix.com documentation simply dd's big single image to tape which does not create original file if original had filemarks. Filemark emulation is more complex than single file and I want to do this exactly right 2.01 Code:
24.12.1996 23:32 630 784 amigasrc.cpio.gz 24.12.1996 23:32 1 642 496 bsd.cpio 24.12.1996 23:32 10 433 536 Cdev.cpio 24.12.1996 23:32 2 986 496 conf.cpio 24.12.1996 23:32 10 873 344 core.cpio 24.12.1996 23:32 5 836 800 emacs.cpio 24.12.1996 23:32 2 351 104 games.cpio 24.12.1996 23:32 2 560 list.cpio 24.12.1996 23:32 2 176 512 lp.cpio 24.12.1996 23:32 6 392 320 man.cpio 24.12.1996 23:32 3 036 160 net.cpio 24.12.1996 23:32 4 186 624 olcore.cpio 24.12.1996 23:32 1 667 072 oldev.cpio 24.12.1996 23:32 4 919 296 public.cpio 24.12.1996 23:32 22 318 592 pubsrc.cpio.gz 24.12.1996 23:32 751 ReadMe.txt 24.12.1996 23:32 5 967 872 sysadm.cpio 24.12.1996 23:32 2 167 296 terminfo.cpio 24.12.1996 23:32 1 487 360 text.cpio 24.12.1996 23:32 732 160 uucp.cpio 24.12.1996 23:32 5 563 392 Xbasic.cpio 24.12.1996 23:32 8 308 224 Xcore.cpio 24.12.1996 23:32 2 469 888 Xdev.cpio 24.12.1996 23:32 7 218 688 Xtras.cpio Code:
24.12.1996 23:32 566 489 2.03_unix.gz 24.12.1996 23:32 649 269 AmigaBootfd0.dd.gz 24.12.1996 23:32 649 271 AmigaBootfd0ad.dd.gz 24.12.1996 23:32 273 690 AmigaRootfd0.dd.gz 24.12.1996 23:32 273 692 AmigaRootfd0ad.dd.gz 24.12.1996 23:32 749 i_01.cpio.gz 24.12.1996 23:32 250 425 i_02.cpio.gz 24.12.1996 23:32 3 975 772 i_03.cpio.gz 24.12.1996 23:32 567 724 i_04.cpio.gz 24.12.1996 23:32 3 088 079 i_05.cpio.gz 24.12.1996 23:32 649 115 i_06.cpio.gz 24.12.1996 23:32 5 251 403 i_07.cpio.gz 24.12.1996 23:32 1 078 554 i_08.cpio.gz 24.12.1996 23:32 1 907 025 i_09.cpio.gz 24.12.1996 23:32 2 435 273 i_10.cpio.gz 24.12.1996 23:32 345 112 i_11.cpio.gz 24.12.1996 23:32 492 197 i_12.cpio.gz 24.12.1996 23:32 267 838 i_13.cpio.gz 24.12.1996 23:32 2 145 547 i_14.cpio.gz 24.12.1996 23:32 270 052 i_15.cpio.gz 24.12.1996 23:32 731 407 i_16.cpio.gz 24.12.1996 23:32 3 906 309 i_17.cpio.gz 24.12.1996 23:32 850 883 i_18.cpio.gz 24.12.1996 23:32 580 268 i_19.cpio.gz 24.12.1996 23:32 996 533 i_20.cpio.gz 24.12.1996 23:32 3 270 244 i_21.cpio.gz 24.12.1996 23:32 958 395 i_22.cpio.gz 24.12.1996 23:32 572 298 i_23.cpio.gz 24.12.1996 23:32 4 394 196 i_24.cpio.gz 24.12.1996 23:32 8 122 251 i_25.cpio.gz 24.12.1996 23:32 7 136 770 i_26.cpio.gz 24.12.1996 23:32 14 416 748 i_27.cpio.gz |
20 June 2013, 14:39 | #59 | |
Registered User
Join Date: Aug 2004
Location:
Posts: 3,351
|
Quote:
On the actual tape, I assume there is one filemark after each file, possibly with two filemarks after the last file. (Amix might not care whether there are two filemarks at the end.) From the filenames, you should be able to write each of the files in the 2.01 archive (in the correct order) as-is to a tape. [Whoever created the 2.01 archive named the two compressed files ending in .gz, but they are actually compressed with the UNIX compress command, not gzip. Either way, don't decompress those before writing to tape. Note the "zcat=y" in the List file corresponding to the two compressed files.] For the 2.03 archive, it seems whoever created that compressed all the files with gzip. You'll need to decompress them before writing to a tape. Except for the last two files which (hopefully) are unchanged, still compressed with UNIX compress (conventional file extension would be .Z), and not re-compressed with gzip. You can use the "file" program in Linux to check. But unpack the file listing (in i_01.cpio.gz) and double-check which files are compressed or not. |
|
20 June 2013, 16:26 | #60 |
WinUAE developer
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 49
Posts: 26,575
|
2.01 seems to work, at least first tape access accepts List.cpio data.
But after install type selection and filesystem formatting Amix sends REWIND command (IMMED=0) to tape drive with SCSI chip transmit count set to 14 = Amix expects rewind to return 14 bytes of data. It shouldn't return anything (except usual scsi status byte but it isn't part of returned data). Returning 14 zero bytes does not help. It tries REWIND twice and then it aborts. |
Currently Active Users Viewing This Thread: 1 (0 members and 1 guests) | |
Thread Tools | |
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
Amix on WinUAE: Access to USB? | bigbod | support.WinUAE | 3 | 06 August 2013 20:46 |
A godd bbs prog except amix | Wiking67 | request.Apps | 8 | 24 January 2010 02:36 |
AMIX an an emulator? | swampcretin | support.Apps | 16 | 09 September 2005 23:01 |
Amix Disk 1 on A1200/030 | redblade | support.Apps | 0 | 25 November 2004 08:36 |
WinUAE 0817r3-GUI dissappears/ WinUAE freezes. | 7-Zark-7 | support.WinUAE | 2 | 23 December 2001 14:19 |
|
|