ng@maxwell.physics.purdue.edu (Nicholas J. Giordano) (04/10/89)
I recently succeeded in getting my Lucas board to work in my A1000, and I have been comparing some benchmark tests to the results I got with a 68000 installed. While the machine now runs faster, I do not get nearly the speed increase quoted in the Transactor article. In addition, the benchmark programs on the Lucas disk do not run as fast as advertised (they are about a factor of 10-20 slower than given in the article, and about a factor of 2 faster than with the 68000). I have an A1000 with 1/2 MB and one external floppy. The Lucas board is running at 20 MHz (with 16 MHz parts). I am using Workbench 1.3, and I believe that all the standard libraries are in the libs directory. I am compiling with Manx 3.6a, and have tried using the +2 and +f8 compiler switches, with either ma.lib or mt.lib (in all cases I have used 16 bit ints, small code and small data models). When I use the +2 and +f8 switches, everyting seems to compile and link fine, but the machine crashes. Any suggestions would be greatly appreciated. Nick
daveh@cbmvax.UUCP (Dave Haynie) (04/10/89)
in article <2125@pur-phy>, ng@maxwell.physics.purdue.edu (Nicholas J. Giordano) says: > I am compiling with Manx 3.6a, and have tried using the +2 and +f8 > compiler switches, with either ma.lib or mt.lib (in all cases I have > used 16 bit ints, small code and small data models). When I use > the +2 and +f8 switches, everyting seems to compile and link fine, > but the machine crashes. First check to see that your 68881 is really being seen by the system. If you have a copy of SetCPU, it'll tell you. So will a GURU "B", for F-Line emulation exception, most probably. If everything's really working, you should try using the "m8.lib" family of libraries with the +f8 option. > Nick -- Dave Haynie "The 32 Bit Guy" Commodore-Amiga "The Crew That Never Rests" {uunet|pyramid|rutgers}!cbmvax!daveh PLINK: D-DAVE H BIX: hazy Amiga -- It's not just a job, it's an obsession
ng@maxwell.physics.purdue.edu (Nicholas J. Giordano) (04/12/89)
In article <6560@cbmvax.UUCP> daveh@cbmvax.UUCP (Dave Haynie) writes: >in article <2125@pur-phy>, ng@maxwell.physics.purdue.edu (Nicholas J. Giordano) says: > >> I am compiling with Manx 3.6a, and have tried using the +2 and +f8 >> ---- stuff deleted ---- >> but the machine crashes. > >First check to see that your 68881 is really being seen by the system. If >you have a copy of SetCPU, it'll tell you. So will a GURU "B", for F-Line >emulation exception, most probably. If everything's really working, you >should try using the "m8.lib" family of libraries with the +f8 option. Thanks for the tip - I ran setcpu and as you suspected the system is not seeing the 68881. It is seeing the 68020 though. I didn't think that the Lucas board would boot up if the 68881 doesn't show some signs of life, but maybe that is not the case. Also, I do not get a GURU "B" - instead I get an type "D" GURU. Any more help or suggestions would be greatly appreciated. Nick
daveh@cbmvax.UUCP (Dave Haynie) (04/18/89)
in article <2135@pur-phy>, ng@maxwell.physics.purdue.edu (Nicholas J. Giordano) says: > Thanks for the tip - I ran setcpu and as you suspected the system is > not seeing the 68881. > It is seeing the 68020 though. I didn't think that the Lucas board would > boot up if the 68881 doesn't show some signs of life, but maybe that > is not the case. Also, I do not get a GURU "B" - instead I get an type > "D" GURU. I'm kind of surprised it works myself. I guess when Exec does it's '881 test, it's just checking to see if an '881 instruction actually works, not what kind of exception is actually taken if it doesn't work. Here's the trick. Normally, the 68020 expects a 68881 to respond to any 68881 instruction, whether it's there or not. If someone else responds, or if the 68881 hookup is somehow in trouble, you'll get the "D" GURU, which is a Coprocessor Protocol Violation exception. If you really meant to run without a 68881 in a system, you'd have to decode for a 68881 and generate a bus error when the '881 is accessed. That causes the '020 to generate the F-line exception (a "B" GURU if there's no handler for it) just like a 68000 would. Since you're trying to use the '881, you need to get it actually working. There's really not all that much I can tell here about what your '881 is doing wrong. First thing I'd check would be the connections to it and to the logic that creates the '881 chip select. Something is generating the DSACK(s) for that '881 cycle. First thing I'd look for is the 68881 chip select being made OK. Next, make sure that both DSACKs and all the proper address lines are connected. If it still doesn't work, check all other connections. I really can't suggest much else without more info. > Any more help or suggestions would be greatly appreciated. > Nick -- Dave Haynie "The 32 Bit Guy" Commodore-Amiga "The Crew That Never Rests" {uunet|pyramid|rutgers}!cbmvax!daveh PLINK: D-DAVE H BIX: hazy Amiga -- It's not just a job, it's an obsession