[comp.sys.amiga] The Inevitable 1.4 Rom Problem

gords@cognos.UUCP (Gord Smith) (01/03/90)

I have been concerned for some time about how having KickStart in ROM is going
to be a reeeeeaaaaal problem once 1.4 comes out, in terms of still being able
to run misbehaved but nevertheless enjoyable software that works under 1.2.

The quoted article below points out that there are even problems with some
software under KickStart 1.3, whose only supposed change was autoboot.

I was planning on posing this potential and inevitable problem to the
net.wisdom sometime soon, and the quoted article shows a good example of the
problem.

In article <1017@tuminfo1.lan.informatik.tu-muenchen.dbp.de>
tensi@lan.informatik.tu-muenchen.dbp.de (Thomas Tensi) writes:
>I have the following problem with FF1:
>
>I added an autoboot hard disk to my Amiga 2000A and had the dealer also replace
>Kickstart 1.2 by 1.3.
>
>Now the following effect occurs: When I start Ferrari Formula One by booting
>from the floppy, everything seems to go ok. But on any race track - as soon as
>the car moves - strange ghost images occur in every frame.
>
>I wouldn't like to disconnect the hard disk (or even change ROMs!) any time I
>want to play FF1...

A friend of mine has a 1000 and has confirmed that FF1 does not work with
KickStart 1.3.  Of course, for him it's just a matter of changing KickStart
disks and powering down/up.

What about us lucky folk with KickStart in ROM??

I've been looking at hard disks for my 500, but would rather live without
autoboot than have to junk FF1 and God-knows-what-else.

Inevitably, however, we'll all have to upgrade to 1.4 KS/WB.  What happens
then?

Perhaps (he said hopefully) someone is thinking ahead on this and could come up
with some kind of workable solution short of opening up your machine and
changing ROMs  on a regular basis.

How about something along the lines of the 68020/68000 boot-up on 2000's where
holding down the left mouse button causes it to boot in 68000 mode?

We could use the right mouse button for KS1.2 mode instead of KS1.4.

How about it Commodore?   Other folks?

-- 
D. Gordon Smith         Voice: (613) 738-1338 ext 6118       P.O. Box 9707
Cognos Incorporated       FAX: (613) 738-0002                3755 Riverside Dr.
uucp: gords@cognos.uucp || uunet!mitel!sce!cognos!gords      Ottawa, Ontario
"I bumped into Brewer's Retail 24 times!" - D. Prosser       CANADA  K1G 3Z4

perley@trub (Donald P Perley) (01/04/90)

In article <7797@cognos.UUCP>, gords@cognos (Gord Smith) writes:
>I have been concerned for some time about how having KickStart in ROM is going
>to be a reeeeeaaaaal problem once 1.4 comes out, in terms of still being able
>to run misbehaved but nevertheless enjoyable software that works under 1.2.
>
>The quoted article below points out that there are even problems with some
>software under KickStart 1.3, whose only supposed change was autoboot.

If you access the routines in the "proper way", that is opening libraries, and 
calling routines at the addresses in the jump table you get from the open, 
than I think things should be ok.

There is some software out there that will call a routine at location X
because thats where they empirically found it was in KS1.2, or for a real
hackers delight, will call a routine at a non-standard entry point to make
it do just what they want it to.

Consider what happens when you write a program with a number of routines.
If you change just one of them and recompile, you could say that all the other
ones were unchanged.  In reality, though, the one you changed will be a little
different in length, so all the other ones are shifted around a little. 
(ignoring relocation adjustment for the moment)
If you call the routines by absolute location you would say they are broken.
If you call them by name, then they are unchanged.

-don perley
perley@trub.crd.ge.com

daveh@cbmvax.commodore.com (Dave Haynie) (01/05/90)

in article <7797@cognos.UUCP>, gords@cognos.UUCP (Gord Smith) says:

> A friend of mine has a 1000 and has confirmed that FF1 does not work with
> KickStart 1.3.  Of course, for him it's just a matter of changing KickStart
> disks and powering down/up.

> What about us lucky folk with KickStart in ROM??

> I've been looking at hard disks for my 500, but would rather live without
> autoboot than have to junk FF1 and God-knows-what-else.

> Inevitably, however, we'll all have to upgrade to 1.4 KS/WB.  What happens
> then?

Perhaps you're thinking of it in the wrong way.  What if, instead of breaking
under 1.3, this program broke at random, during play.  In such a case, I'd
feel the program was unusably buggy, and I'd be pretty angry at the vendor
for shipping such drek.  

Well, believe it or not, breaking under 1.3, or when there's a 68020 instead 
of a 68000, is an equivalent bug.  Buggy programs should be fixed.  Period.
Any company that won't fix the mistakes they've made isn't a company I'd want
to make any purchases from in the future.  

> How about something along the lines of the 68020/68000 boot-up on 2000's where
> holding down the left mouse button causes it to boot in 68000 mode?

> We could use the right mouse button for KS1.2 mode instead of KS1.4.

> How about it Commodore?   

As far as Commodore is concerned, the current OS is what's supported.  Any 
program that doesn't work under it is broken, and should be fixed by the
vendor.  It's not like Commodore pulled some trick on developers between
any of the ROM revisions; most of the rules for proper operating under the
Amiga OS were published and in the hands of developers well before the
first A1000 shipped with 1.0.

>Other folks?

Third parties are always free to do whatever they like, even kludgery
like this.  I saw a demo of a thing like this in Germany last year.  It
let you load KickStart into some RAM, then boot from either a normal ROM
or this RAM in a 500.  I don't know if this was ever built or not.

But the bottom line is, broken software should be fixed.  If no one ever
tells the vendor their old software doesn't work under 1.3, it may be 
awhile before they notice on their own.  Any broken program that gets 
fixed serves the whole Amiga community.  Conversely, any attempt to keep
around old versions of the OS for general use fragments the Amiga software
base and is bound to hold back the growth of the system.  It may seem
like it's easier just to boot 1.2 somehow than get Company X to fix their
bugs, but in the end, you're doing yourself a disservice.

> D. Gordon Smith         Voice: (613) 738-1338 ext 6118       P.O. Box 9707
-- 
Dave Haynie Commodore-Amiga (Systems Engineering) "The Crew That Never Rests"
   {uunet|pyramid|rutgers}!cbmvax!daveh      PLINK: hazy     BIX: hazy
                    Too much of everything is just enough

cmcmanis@stpeter.Sun.COM (Chuck McManis) (01/05/90)

The fact that the ROMs change on the Amiga occasionally is no secret to 
ANYONE. And sometimes, like in the case of Ferrari Formula I, or Crazy
Cars, this causes problems. That is because the ignorant assholes writing
the code are too lazy to figure out how to do it correctly. And the sad
part is, it isn't all that tough to figure out since it is documented 
quite well. Now I had an interesting discussion with one I.A. who did
the programming for another Amiga game which isn't all that popular
anyway. The names will remain nameless because I don't wish them ill
will, I'm just demonstrating a sad truth.

Me> So, you're code is calling the trackdisk code that reads tracks.
I.A> Yeah, isn't it neat, I didn't have time to write my own disk driver
     so I called the one that is already in the ROM.
Me> So why don't you just use the trackdisk.device ? 
I.A.> Oh, I don't use AmigaDOS at all, I write straight to the hardware
      for maximum speed.
Me> But you call the same code that would be called if you used the 
    trackdisk.device. The only difference is you do it illegally.
I.A.> Well, if I wanted to use trackdisk I would have to have Intuition
      running and boot the DOS.
Me> ??!?! Say What? Exec doesn't depend on either Intuition or AmigaDOS,
    you don't have to "boot" anything. 
I.A.> Really ? 
Me> Of course, that is the way it was designed to work. 
I.A.> Oh, well this is just a game program, it isn't like it is a "real"
      program where there will be updates or anything.
Me> I suppose, of course I'll never buy anything you have programmed?
I.A.> Why not?
Me> Because it won't run on my system.
I.A.> How do you know ?
Me> <Sigh> ....


Anyway, the only way to "fix" this problem is to have the customers
write to the companies selling this stuff demanding that the product
work in the current and all future ROM releases. They can write into
the porting contract that this is the case and the developers will have
to be a bit more realistic. 

Another point, the I.A. above is well named because the code they wrote
is complete crap, no modularity, little to no portability, and impossible
to maintain. But what do you expect from someone who dropped out of college
freshman year because they thought PASCAL was "stupid." 

Final summary, some of the programmers out there have only one goal in 
mind : "Get it running and out the door." And everything else is sacrificed
for this single goal. This generally means that any pertubation of the
system such as a different processor, different ROM, different model, or
different motherboard, may and often does cause this barely running code
to crumble to dust. some of the programmers out there write damn good 
code that will run on everything from Kickstart 1.0 to 1.4A16. When you
find a program like FF1 that doesn't work, note the name of the programmers
or company that did the Amiga port. Don't buy any more stuff that they
port. If you can't find the name of the actual programmer then you might
just boycott everything that company writes. Eventually, you will be
buying only those games that will continue to work, and the companies 
will become sensitive to the need to write better code. 

Interesting Side Note : The only thing that changed in the 1.3 ROMs WAS
autoboot, but the entry points of several routines got moved around. 
That is why things like FF1 crash.


--Chuck McManis
uucp: {anywhere}!sun!cmcmanis   BIX: cmcmanis  ARPAnet: cmcmanis@Eng.Sun.COM
These opinions are my own and no one elses, but you knew that didn't you.
"If it didn't have bones in it, it wouldn't be crunchy now would it?!"

jer@stiatl.UUCP (John Ramspott) (01/05/90)

If you have a A2620 or A2630, you can use Dave Haynie's SetCPU command to use
another kickstart. That way you can put 1.4 in ROM, but run 1.2 or 1.3 when
needed for a particular program. Nice deal. SetCPU is on a Fred Fish disk,
aomewhere around 223 or so.
  You get a nice speedup to boot :-)

  John Ramspott
-- 
John Ramspott						gatech!stiatl!jer
Sales Technologies, Inc
3399 Peachtree Rd, NE
Atlanta, GA  (404) 841-4000

farren@well.UUCP (Mike Farren) (01/05/90)

In article <129893@sun.Eng.Sun.COM> cmcmanis@sun.UUCP (Chuck McManis) writes:
>Final summary, some of the programmers out there have only one goal in 
>mind : "Get it running and out the door."

Well, that's my goal, too - I just have a different definition of "get
it running".  If it doesn't work on ALL configurations, and isn't going
to work on later revs of the OS, it ain't running...

>note the name of the programmers or company that did the Amiga port.

Please do.  And I, for one, will make sure that my name is prominent on
any port I do (as it has been for the ports I've done in the past), so
that you can parcel out the credit as well as the blame.  It's funny - 
the number of words of praise I've gotten for a given port have been
minimal (who thinks to credit the porter, anyhow :-( ), but I do sleep
well at night...
-- 
Mike Farren 				     farren@well.sf.ca.usa

d87-khd@sm.luth.se (Karl-Gunnar Hultland) (01/05/90)

In article <7797@cognos.UUCP> gords@cognos.UUCP (Gord Smith) writes:
>I have been concerned for some time about how having KickStart in ROM is going
>to be a reeeeeaaaaal problem once 1.4 comes out, in terms of still being able
>to run misbehaved but nevertheless enjoyable software that works under 1.2.

<stuff deleted>
>
>I was planning on posing this potential and inevitable problem to the
>net.wisdom sometime soon, and the quoted article shows a good example of the
>problem.

<stuff deleted>

>A friend of mine has a 1000 and has confirmed that FF1 does not work with
>KickStart 1.3.  Of course, for him it's just a matter of changing KickStart
>disks and powering down/up.
>
>What about us lucky folk with KickStart in ROM??

At least in Sweden, and in Germany too, some companies advertise about
a product called kickselector it allows you to have 3 kickstarts at once
just selecting which to boot with a switch on the outside.That should
minimize the trouble of exchanging your kick.
As of incompabilities the only problem should be if the programmers
pays no attention to the guidelines Commodore have given, to the
programmers, about how to code a upwards compatible program.

The real problem is that few programmers will use the new features
just because there exists quite a few 1.2 and 1.3 on the market.

					Karl

<$><$><$><$><$><$><$><$><$><$><$><$><$><$><$><$><$><$><$><$><$><$><$><$><$><$>
< Karl 'Kalle' Hultland    <$>                                               >
< Dept. of Comp. sci.      <$> d87-khd@sm.luth.se |                          >
< University of Lulea      <$> {uunet,mcvax}!sunic.se!sm.luth.se!d87-khd     >
< Sweden                   <$>                                               >
<$><$><$><$><$><$><$><$><$><$><$><$><$><$><$><$><$><$><$><$><$><$><$><$><$><$>
<      If two people agree on EVERYTHING , one of them is OBSOLETE!!         >
<$><$><$><$><$><$><$><$><$><$><$><$><$><$><$><$><$><$><$><$><$><$><$><$><$><$>

sparks@corpane.UUCP (John Sparks) (01/05/90)

Ms. It's too late to change that. And it would be a shame to
throw all those programs out the window just because they didn't write them
according to the 'rules'.

How about a patch to the boot routines, that if there is a kickstart disk in
the drive on boot up, then disable the ROMs and load the kickstart into RAM
and somehow map that RAM to be in the ROM address space?

You would lose some memory, but with 1M of chip ram allowed with the new
Agnus, you should still be able to have a fully functional 512K chip RAM amiga.


-- 
John Sparks  | D.I.S.K. 24hrs 1200bps. Accessable via Starlink (Louisville KY)
sparks@corpane.UUCP <><><><><><><><><><><> D.I.S.K. ph:502/968-5401 thru -5406  
Lead me not into temptation. I can find it myself.

gords@cognos.UUCP (Gord Smith) (01/05/90)

In article <9211@cbmvax.commodore.com> daveh@cbmvax.commodore.com (Dave Haynie) writes:
>in article <7797@cognos.UUCP>, gords@cognos.UUCP (Gord Smith -- me) says:
>> [Essentially FF1 and who-knows-what else don't work under 1.3 and these and
>> undoubtedly other stuff won't work under 1.4]
 
>Perhaps you're thinking of it in the wrong way.  What if, instead of breaking
>under 1.3, this program broke at random, during play.  In such a case, I'd
>feel the program was unusably buggy, and I'd be pretty angry at the vendor
>for shipping such drek.  
 
>Well, believe it or not, breaking under 1.3, or when there's a 68020 instead 
>of a 68000, is an equivalent bug.  Buggy programs should be fixed.  Period.
>Any company that won't fix the mistakes they've made isn't a company I'd want
>to make any purchases from in the future.  
 
I agree completely.  But, what chance do I have in convincing someone like EA
or some company that has since gone t*ts-up to revise their software?
 
When I bought FF1, KS1.3 wasn't out yet, so I had no idea it wouldn't work
under it.
 
>>How about something along the lines of the 68020/68000 boot-up on 2000's where
>>holding down the left mouse button causes it to boot in 68000 mode?
>>We could use the right mouse button for KS1.2 mode instead of KS1.4.
>>How about it Commodore?   
>
>As far as Commodore is concerned, the current OS is what's supported.  Any ...
 
That's fine, and, working at a company where sometimes fixing a bug in our
software causes an outcry from customers who liked it the broken way, I
appreciate and envy this stance.
 
>>Other folks?
 
>Third parties are always free to do whatever they like, even kludgery
>like this.  I saw a demo of a thing like this in Germany last year.  It
>let you load KickStart into some RAM, then boot from either a normal ROM
>or this RAM in a 500.  I don't know if this was ever built or not.
 
If it didn't use up precious RAM (i.e. just have both ROMs on a card with a
dip-switch accessable from outside a 500) my check would be in the mail.
 
I wholeheartedly agree that the turkeys that break the programming rules "should
be taken out and maimed" (Steve Martin).  However, the fact is that I and many
others have spent money on naughty software (whether knowingly or not) and
we're not likely to get the publishing conglomerates to issue an update to a
n-year-old game.  Look at the problems with, and subsequent "kludged" fixes
for, Artcic Fox etc. which barf on non-chip memory.  I don't think there have
been any official updates for these games, just a workaround.

I don't like this situation, but the fact is that some people have a
substantial investment in software that broke rules.  If it can't (or won't)
be enhanced, all they know is it won't work anymore if they upgrade OS's. 
CATCH-22.

-- 
D. Gordon Smith         Voice: (613) 738-1338 ext 6118       P.O. Box 9707
Cognos Incorporated       FAX: (613) 738-0002                3755 Riverside Dr.
uucp: gords@cognos.uucp || uunet!mitel!sce!cognos!gords      Ottawa, Ontario
"I bumped into Brewer's Retail 24 times!" - D. Prosser       CANADA  K1G 3Z4

bralick@cs.psu.edu (Will Bralick) (01/05/90)

In article <694@tau.sm.luth.se> Karl-Gunnar Hultland <d87-khd@tau.luth.se> writes:
|In article <7797@cognos.UUCP> gords@cognos.UUCP (Gord Smith) writes:
|>I have been concerned for some time about how having KickStart in ROM is going
|>to be a reeeeeaaaaal problem once 1.4 comes out, in terms of still being able
|>to run misbehaved but nevertheless enjoyable software that works under 1.2.
|
|At least in Sweden, and in Germany too, some companies advertise about
|a product called kickselector it allows you to have 3 kickstarts at once
|just selecting which to boot with a switch on the outside.That should
|minimize the trouble of exchanging your kick.

I have always wondered why the kickstart ROMs weren't packaged
in one of those cartridge doodahs.  Were cartridges considered
and rejected for some design reason, or were they not considered
at all?  Opening the box to replace ROMs each time the operating 
system is upgraded has always seemed suboptimal to me.


Regards,

-- 
Will Bralick                          |  ... when princes think more of
     bralick@psuvax1.cs.psu.edu       |  luxury than of arms, they lose
     bralick@gondor.cs.psu.edu        |  their state.
with disclaimer;  use disclaimer;     |             - Niccolo Machiavelli

sparks@corpane.UUCP (John Sparks) (01/06/90)

sparks@corpane.UUCP (I) write:

>Ms. It's too late to change that. And it would be a shame to
>throw all those programs out the window just because they didn't write them
>according to the 'rules'.

I am using Word Perfect to compose my articles and using NN to send/read usenet
news. I seem to be having some problems though. Sometimes half of my message
gets chopped off like the one above, (talk about a line eater, I have a page
eater!) and sometimes the entire message gets eaten leaving only a .signature.

So if you get some chopped up messages from me, I appologize and will try to
correct it as soon as I can figure out what is going on. Most of the time it
works, but sometimes....CHOMP!

Anyway, I was saying in the last message:

When ever someone points out that it would be a good idea for the Amiga to be
able to override the ROMs and use a kickstart disk, someone will inevitably
say "If the program didn't break the rules then it would work with the new
kickstart". 
But the programs *dont* work with the new ROMs. It's too late to change that.
--
The rest of the message made it thru, so you can read it there.

-- 
John Sparks  | D.I.S.K. 24hrs 1200bps. Accessable via Starlink (Louisville KY)
sparks@corpane.UUCP <><><><><><><><><><><> D.I.S.K. ph:502/968-5401 thru -5406 
Beware of quantum ducks: Quark, Quark.

dfrancis@dsoft.UUCP (Dennis Heffernan) (01/06/90)

In article <7797@cognos.UUCP> gords@cognos.UUCP (Gord Smith) writes:
>I have been concerned for some time about how having KickStart in ROM is
>going
>to be a reeeeeaaaaal problem once 1.4 comes out, in terms of still being able
>to run misbehaved but nevertheless enjoyable software that works under 1.2.
> (much deleted commentary)

	I'm completely uninterested in such a thing.  I stopped buying games 
a while ago, for the most part, and I won't buy applications unless I'm
sure they'll run on my system, which is already non-standard.  Any apps I've
already got will almost certainly get upgraded if they break under 1.4.
And a widespread 1.2 fallback ability will just encourage developers not to 
write under 1.4.


-- 
	--dfh	...uunet!tronsbox!dsoft!dfrancis
		"Great spirits have always encountered violent opposition
		 from mediocre minds."  -Albert Einstein

JKT100@PSUVM.BITNET (JKT) (01/07/90)

In article <7797@cognos.UUCP>,
>
>I have been concerned for some time about how having KickStart in ROM is going
>to be a reeeeeaaaaal problem once 1.4 comes out, in terms of still being able
>to run misbehaved but nevertheless enjoyable software that works under 1.2.
>
>A friend of mine has a 1000 and has confirmed that FF1 does not work with
>KickStart 1.3.  Of course, for him it's just a matter of changing KickStart
>disks and powering down/up.
>What about us lucky folk with KickStart in ROM??  Inevitably, however, we'll
>all have to upgrade to 1.4 KS/WB.  What happens then?
>
>Perhaps (he said hopefully) someone is thinking ahead on this and could
>come up with some kind of workable solution short of opening up your
>machine and changing ROMs  on a regular basis.
>
>How about something along the lines of the 68020/68000 boot-up on 2000's where
>holding down the left mouse button causes it to boot in 68000 mode?
>
>How about it Commodore?   Other folks?

I believe this is another case of misplaced blame.  In a vast majority
of the cases where software that works with 1.2 does not work with 1.3,
it is a result of the software developers not following proper developement
guidelines.  All authorized developers are told by Commodore what areas
of the OS not to try to circumvent because they want to allow for
compatibility with future upgrades.  Unfortunately, all too often the
developers decide they know better and start making direct jumps to
routines that are changed upon upgrade.

I do not think it is up to Commodore to allow for lousy programming on
the part of irresponsible 3rd party developers by implementing the button
press access to previous ROM versions.  Instead, it is up the software
developers to correct their mistakes and fix the software that should
have worked correctly in the first place.

If a developer refuses to make the corrections, such as in the case of
FF1, it seems to me that it tells you a great deal about just how
dedicated that developer is to making the customer happy vs. how
much they want an immediate profit without having to pay for support.

'Nuff said.
                                                          Kurt
--
========================================================================
|| Kurt Tappe   (814) 862-8630  ||   Looking for Amigas in all        ||
|| 600 E. Pollock Rd., #5705    ||   the wrong places......           ||
|| State College, PA 16801       -------------------------------------||
||   jkt100@psuvm.bitnet  or  jkt100%psuvm.bitnet@psuvax1             ||
||      or  jkt100@psuvm.psu.edu                   QLink: KurtTappe   ||
========================================================================

GORRIEDE@UREGINA1.BITNET (Dennis Robert Gorrie) (01/07/90)

RE concerns about new KS1.4 and future OS releases (with BUGS) in ROM,
RE Broken software, Expensive ROMS

If I remember correctly, there were programs that allowed an A1000 running
KS 1.2 to load up 1.1 into RAM and use it instead.

Shortly after this, there was another program to allow an A2000 to load KS 1.1
into RAM as well.   Some people were successful in getting broken programs
to run using this method.

It seems to me that as long as users have lots of ram, and KS is supplied on
a disk, this should be a solution for the many programs that will break.
Could someone else please verify this?

+-----------------------------------------------------------------------+
|Dennis Gorrie                 'Sudden de-compression Sucks!'           |
|GORRIEDE AT UREGINA1.BITNET                                            |
+-----------------------------------------------------------------------+

N5317.U0@legion.fidonet.org (N5317 U0) (01/07/90)

WWIVnet: Ratt Sass Productions [503-221-0726] - Node 5317
Name: GORRIEDE@UREGINA1.BITNET


RE concerns about new KS1.4 and future OS releases (with BUGS) in ROM,
RE Broken software, Expensive ROMS

If I remember correctly, there were programs that allowed an A1000 running
KS 1.2 to load up 1.1 into RAM and use it instead.

Shortly after this, there was another program to allow an A2000 to load KS 1.1
into RAM as well.   Some people were successful in getting broken programs
to run using this method.

It seems to me that as long as users have lots of ram, and KS is supplied on
a disk, this should be a solution for the many programs that will break.
Could someone else please verify this?

+-----------------------------------------------------------------------+
|Dennis Gorrie                 'Sudden de-compression Sucks!'           |
|GORRIEDE AT UREGINA1.BITNET                                            |
+-----------------------------------------------------------------------+

---
Gated By: Ratt Sass Productions - Temporary Gateway! 
--  
Legion EchoBarf Cafe/Pet Cemetary BBS
N5317 U0 - via FidoNet node 1:105/50
UUCP: uunet!m2xenix!legion!N5317.U0

farren@well.UUCP (Mike Farren) (01/07/90)

bralick@cs.psu.edu (Will Bralick) writes:

>I have always wondered why the kickstart ROMs weren't packaged
>in one of those cartridge doodahs.  Were cartridges considered
>and rejected for some design reason, or were they not considered
>at all?  Opening the box to replace ROMs each time the operating 
>system is upgraded has always seemed suboptimal to me.

There was a cartridge slot in the original (or somewhat original, anyhow)
Amiga design - it was intended, according to the documentation I have, to
be for, among other things, an add-in MS-DOS processor.

As to why Kickstart ROMs aren't put into cartridges - many reasons, 
including a very basic one of reliablility - each insertion/removal cycle
of a cartridge introduces a greater chance of failure.  Since the system
software isn't changed all that often, ROMs make much more economic sense.

-- 
Mike Farren 				     farren@well.sf.ca.usa

sean@ms.uky.edu (Sean Casey) (01/08/90)

How difficult is it to write software that has a reasonable chance of
running on all configurations?

If I follow the rules, and find out what the "tricks and traps" of
using the faster processors, is it feasable to write portable games on
my old trusty A1000?

If you answered yes, would you bet your paycheck on it?


Sean
-- 
***  Sean Casey          sean@ms.uky.edu, sean@ukma.bitnet, ukma!sean
***  Copyright 1989 by Sean Casey. Only non-profit redistribution permitted.
***  "Gotta warn ya, if you're not a RUSH fan, well, what's *wrong* with you?"
***     -DJ during WKQQs Four HOURS of Rush special.

easu021@orion.oac.uci.edu (Jason Goldberg) (01/08/90)

I tend to agree with Dave that the software should run on 1.4 and we should
not need to be able to run 1.3/1.2 on our A500/2000's.  But I did find it
a little funny that Dave didn't mention that he wrote a great little 
utility called SetCpu which as I understand it allows you to load KS
into RAM among other things.  I use it to load KS from ROM into 32 bit
RAM but as I understand the DOCS you could also load KS from DISK to 16
bit RAM.
 
-Jason-

jtreworgy@eagle.wesleyan.edu (James Treworgy) (01/08/90)

In article <234.25A80F19@legion.fidonet.org>, N5317.U0@legion.fidonet.org (N5317 U0) writes:
> WWIVnet: Ratt Sass Productions [503-221-0726] - Node 5317
> Name: GORRIEDE@UREGINA1.BITNET
> If I remember correctly, there were programs that allowed an A1000 running
> KS 1.2 to load up 1.1 into RAM and use it instead.
> 
> Shortly after this, there was another program to allow an A2000 to load KS 1.1
> into RAM as well.   Some people were successful in getting broken programs
> to run using this method.
> 

All an A1000 has to do to load 1.1 into RAM is put a KS 1.1 disk in the drive
and turn the computer on. You're probably thinking of a program (I think I've
heard of) which patches the WCS to be 1.1 from a 1.2 bootup.
-- 
James A. Treworgy    -- No quote here for insurance reasons --
jtreworgy@eagle.wesleyan.edu         jtreworgy%eagle@WESLEYAN.BITNET

perley@trub.crd.ge.com (Donald P Perley) (01/08/90)

In article <3981@orion.cf.uci.edu> easu021@orion.oac.uci.edu (Jason Goldberg) writes:
>I tend to agree with Dave that the software should run on 1.4 and we should
>not need to be able to run 1.3/1.2 on our A500/2000's.  But I did find it
>a little funny that Dave didn't mention that he wrote a great little 
>utility called SetCpu which as I understand it allows you to load KS
>into RAM among other things.  I use it to load KS from ROM into 32 bit
>RAM but as I understand the DOCS you could also load KS from DISK to 16
>bit RAM.

Doesn't SetCpu use the memory management unit on your accelerator to remap
the kickstart memory?  That won't work on a normal (500/2000) amiga.

Another scheme is to insure that the jump tables returned from the
library open point to your ram copy of kickstart (isn't this the idea
behind setpatch?) Considering that the programs for which you want
KS1.2 aren't following the normal rules anyway, this probably won't
work either. 

Using SetCpu on a 2500 is no guarantee of success either.  A game that breaks
the rules on Kickstart may have some "feature" that is incompatible with
your processor, like using busy loops for timing.


-don perley

perley@trub.crd.ge.com

GWO110%URIACC.BITNET@brownvm.brown.edu (F. Michael Theilig) (01/09/90)

On 5 Jan 90 15:54:19 GMT you said:
>
>I have always wondered why the kickstart ROMs weren't packaged
>in one of those cartridge doodahs.  Were cartridges considered
>and rejected for some design reason, or were they not considered
>at all?  Opening the box to replace ROMs each time the operating
>system is upgraded has always seemed suboptimal to me.
>
>
     Ik.  I would not want my low level OS on a cartridge!  You work with
 the current version of it and forget about it.  This leads to custom
 kickstarts and a totally non-standard OS!  Let's make a full report of
 programs that break with new versions of AmigaDOS and hardware!  We can
 then all write them nasty letters and taunt them a second time!

     I mused once that I'd like to see Commodore come out with a version
 of AmigaDOS that will work fine with all properly written programs,
 but is guarenteed to break for all improperly written ones.  Just to piss
 these people off!

     More seriously, I would like to create a list of software that doesn't
 work properly with various hardware/software combinations.  What say?

>Regards,
>
>--
>Will Bralick                          |  ... when princes think more of
>     bralick@psuvax1.cs.psu.edu       |  luxury than of arms, they lose
>     bralick@gondor.cs.psu.edu        |  their state.
>with disclaimer;  use disclaimer;     |             - Niccolo Machiavelli

     /*   F. Michael Theilig               GWO110 at URIACC.Bitnet

            "There is no Dark Side in the Moon, really ...
                                  matter of fact it's all dark."       */

daveh@cbmvax.commodore.com (Dave Haynie) (01/09/90)

in article <1293@corpane.UUCP>, sparks@corpane.UUCP (John Sparks) says:
> Summary: sorry about the chopped up message

> But the programs *dont* work with the new ROMs. It's too late to change that.

Au contraire, ROM-breath!  In MOST of the cases of ROM incompatibility, the
company responsible for the program is still alive and kicking.  It may take
some yelling to get them to upgrade your program, or you may (like me) simply
need to send in that old registration card.  Personally, I haven't seen all
that many programs that broke between OS revs.  But if I happened to have one,
I would certainly let my feelings be known in no uncertain terms.  If a
company can't even acknowledge their recognition of the need to supply updates
and be forthcoming about their plans to do so to support currently broken 
software, I for one would not consider buying another piece of software from 
that company.  And I would feel it my civic duty as a member of the Amiga 
community to warn everyone else about such traps.  Just as I would strive to 
mention those companies with a proper attitude about fixing their bugs.

I'm sure you wouldn't like bringing home that great new software widget, only
to find out that it's broken under the current OS rev.  But the only way to
prevent this is for everyone to make the practice of not upgrading totally
unacceptible.  If there was an easy way to keep the old OS around, this 
might not seem as important, but it is.  If an obselete OS is considered
still viable by the majority of the user community, it will likely be
considered so by the vendors as well, and then you're likely to fall into
a situation somewhere down the road where each of your favorite packages
needs a different OS rev.  That would go a fair distance toward killing the
Amiga and eliminating the OS compatibility problem by eliminating software
growth, period.  Multitasking doesn't cross ROM revisions!

By the way, unlike Amiga object modules, the ROM code is not a relocatable module,
but in fact hard wired to a particular address.  Which is exactly why there is
no utility, either from Commodore or elsewhere, that will let you load up an
alternate ROM image without some magic.  I used MMU magic in SetCPU, a 3rd
party could of course build a ROM emulator for ROMed machines like the one I 
saw in Germany last year (if they have it at the Paris conference, I'll let you
all know).

> John Sparks  | D.I.S.K. 24hrs 1200bps. Accessable via Starlink (Louisville KY)
> sparks@corpane.UUCP <><><><><><><><><><><> D.I.S.K. ph:502/968-5401 thru -5406 
> Beware of quantum ducks: Quark, Quark.
-- 
Dave Haynie Commodore-Amiga (Systems Engineering) "The Crew That Never Rests"
   {uunet|pyramid|rutgers}!cbmvax!daveh      PLINK: hazy     BIX: hazy
                    Too much of everything is just enough

daveh@cbmvax.commodore.com (Dave Haynie) (01/09/90)

in article <13616@s.ms.uky.edu>, sean@ms.uky.edu (Sean Casey) says:

> How difficult is it to write software that has a reasonable chance of
> running on all configurations?

It's in general harder to do it wrong than right.  The vast majority of
programs that have had trouble on Amigas between OS revs have been 
games that throw out the OS, and similar things (like the Transformer).
For example, making calls to the OS.  If you're programming in the 
standard way, either assembly or HL, you'll have to go out of your way
to calculate a fixed ROM location, while using the library interface
is natural.  Same with jumping into ROM internals and other evil tricks;
you wouldn't naturally disassemble the ROM and look for code you can 
use.  

The next compatibility problem is the issue of CPU type.  The OS provides
the simple stuff, like the GetCC() call that handles the MOVE SR,<ea>
vs. MOVE CC, <ea> problem.  The more complex stuff is more along the lines
of simple guidelines; don't write self-modifying code, check the trap
type if you're processing exceptions, don't stuff data in the upper 8
bits of address, that kind of thing.  These guidelines have been around in 
some form since before the A1000 was out, and you can tell -- 99% of the
software out there works on the 68030; even many games.  We've also 
published expanded compatibility guidelines in AmigaMail for developers,
and I even did a presentation/paper on it at last a Developer's Conference
awhile back.  Nothing's kept secret here.

Secrets probably account for the third compatibility problem.  The Amiga
software folks publish the interface guidelines for various system
structures and routines.  Sometimes, a structure definition contains
private data, included to help the developer have some idea of what's
going on.  They generall have a warning like:

	/* **** THE FOLLOWING PART OF THIS STRUCTURE IS PRIVATE.  IT
		WILL CHANGE IN THE NEXT REVISION OF THE OS.  THIS IS
		FOR REFERENCE ONLY, DON'T YOU DARE USE THIS IN YOUR
		PROGRAM OR WE'LL SEND GREG BERLIN OVER TO YOUR HOUSE
		TO DO YOU SOME SERIOUS HURTS.
	**** */

Maybe I got the wording wrong, but you get the picture.  If a developer
were to ignore such a warning, and depend on the secret parts of such
OS implementation details, their software would break, as it's supposed
to.

> If I follow the rules, and find out what the "tricks and traps" of
> using the faster processors, is it feasable to write portable games on
> my old trusty A1000?

The stuff I wrote with Lattice 3.xx, a couple floppies, and 512K of RAM
on my A1000 runs on an A3000 (ooooh!) with the beta version of the 1.4 
OS (ooooh!).

> If you answered yes, would you bet your paycheck on it?

In some sense, anyone who's income depends on the Amiga probably is
already.

> Sean

-- 
Dave Haynie Commodore-Amiga (Systems Engineering) "The Crew That Never Rests"
   {uunet|pyramid|rutgers}!cbmvax!daveh      PLINK: hazy     BIX: hazy
                    Too much of everything is just enough

daveh@cbmvax.commodore.com (Dave Haynie) (01/09/90)

in article <3981@orion.cf.uci.edu>, easu021@orion.oac.uci.edu (Jason Goldberg) says:

> I tend to agree with Dave that the software should run on 1.4 and we should
> not need to be able to run 1.3/1.2 on our A500/2000's.  But I did find it
> a little funny that Dave didn't mention that he wrote a great little 
> utility called SetCpu which as I understand it allows you to load KS
> into RAM among other things.  

That does require a machine with an MMU.  An earlier release of SetCPU allowed
you to locate the ROM code in 32 bit RAM with the same trick, thus speeding
ROM bound code up considerably.  The Amiga software folks asked me to see about
loading a ROM image from KickStart disks instead of ROM, so I tried it, and 
after a rather brutal weekend, it worked.  The point was to make it easy to
test stuff under new OS releases without changing a handful of EPROMs every
time the code changed during development.  That it works OK loading in 1.1 or
1.2 is more a result of those being the only KickStart disks I had at home
to play with that weekend.

I wager that most of the programs that are broken enough to fail under 1.3
will have a hard time with 68030s and MMUs.

>I use it to load KS from ROM into 32 bit RAM but as I understand the DOCS 
>you could also load KS from DISK to 16 bit RAM.

I suppose you could, though you'd have to trick it somehow if you're using
an Amiga 32 bit board; the program specifically sniffs out the A2620 or
A2630 memory to make sure it has 32 bit memory for it's ROM image.  And
of course you still need the MMU.

> -Jason-
-- 
Dave Haynie Commodore-Amiga (Systems Engineering) "The Crew That Never Rests"
   {uunet|pyramid|rutgers}!cbmvax!daveh      PLINK: hazy     BIX: hazy
                    Too much of everything is just enough

farren@well.UUCP (Mike Farren) (01/09/90)

sean@ms.uky.edu (Sean Casey) writes:

>If I follow the rules, and find out what the "tricks and traps" of
>using the faster processors, is it feasable to write portable games on
>my old trusty A1000?

Yes.

>If you answered yes, would you bet your paycheck on it?

Well, since you asked...  Yes, I would.  In fact, I have, for the last
year or so, derived my sole income (little as it was :-) from porting
games to the Amiga, and ALL of my games run on ALL configurations.  At
least, every configuration I can try.  There might be some weird hardware
hack out there that I don't run on, but I don't really care - I run on
all standard configurations, and that's good enough for me.

It's easy enough to check, if you've got a full-line Amiga dealer handy.
There, I'm fortunate -- there are two very good dealers within a short
drive, and they're more than willing to let me check things out on their
equipment.  That, plus my own hardware, pretty much covers the field.

The games I've ported, by the way (and in response to several email
enquiries) are Quink, for the now-defunct CBS software, Crystal Quest
(now available!  Buy!  Buy! :-), for Casady and Greene Inc., and
Storm Across Europe, for SSI, plus two others which, for contractual
reasons, I can't disclose.

-- 
Mike Farren 				     farren@well.sf.ca.usa

carpent@SRC.Honeywell.COM (Todd Carpenter) (01/09/90)

In article <9252@cbmvax.commodore.com> daveh@cbmvax.commodore.com (Dave Haynie)
writes:
>
>  [stuff about good software writing skills: RTFM, and OTFM]
>

>   The stuff I wrote with Lattice 3.xx, a couple floppies, and 512K of RAM
>   on my A1000 runs on an A3000 (ooooh!) with the beta version of the 1.4 
>   OS (ooooh!).


Now stop that!  First you tempted us for a year when you were the only one with
the A2630 in your machine.  Now that we have the 2630, you have the 3000.  Does
this mean we have to suffer another year of torture, awaiting its release with
anticipation, while you merrily drop tidbits to make us drool?  Humprh.  :)

daveh@cbmvax.commodore.com (Dave Haynie) (01/11/90)

in article <52989@srcsip.UUCP>, carpent@SRC.Honeywell.COM (Todd Carpenter) says:
> In-reply-to: daveh@cbmvax.commodore.com's message of 9 Jan 90 03:28:37 GMT

> Now stop that!  First you tempted us for a year when you were the only one with
> the A2630 in your machine.  

Actually, both my machines are still A2000+A2630 (eg, A2500/30, but no one gave
me a sticker for that).  About the only thing I use on a daily basis for doing
real work that's hard for anyone else to get for their Amiga is the Moniterm
or A2024 monitor (one at home, one at work, and the main trouble with Moniterm
for users is the stiff price).  I rely on my machines too much, especially when
doing chip work, to use an alpha or beta of the new OS for real work unless I
have to.

-- 
Dave Haynie Commodore-Amiga (Systems Engineering) "The Crew That Never Rests"
   {uunet|pyramid|rutgers}!cbmvax!daveh      PLINK: hazy     BIX: hazy
                    Too much of everything is just enough

cmcmanis@stpeter.Sun.COM (Chuck McManis) (01/13/90)

In article <13616@s.ms.uky.edu> sean@ms.uky.edu (Sean Casey) writes:
>How difficult is it to write software that has a reasonable chance of
>running on all configurations?

About as difficult as writing a structured program versus a single module
full of gotos. 

>If I follow the rules, and find out what the "tricks and traps" of
>using the faster processors, is it feasable to write portable games on
>my old trusty A1000?

You bet, and the strange thing is, the rules are even that tough to master.

>If you answered yes, would you bet your paycheck on it?

Yes, with the caveat that the distributor has to be sure and not tack some
"generic" copy protection code onto the program that breaks the rules.


--Chuck McManis
uucp: {anywhere}!sun!cmcmanis   BIX: cmcmanis  ARPAnet: cmcmanis@Eng.Sun.COM
These opinions are my own and no one elses, but you knew that didn't you.
"If it didn't have bones in it, it wouldn't be crunchy now would it?!"

paj@dlcq15.datlog.co.uk (Paul Jarrett) (01/16/90)

In article <7711@nigel.udel.EDU> GWO110%URIACC.BITNET@brownvm.brown.edu (F. Michael Theilig) writes:
>
>     More seriously, I would like to create a list of software that doesn't
> work properly with various hardware/software combinations.  What say?
>

Yes, good idea. Even a list of s/w that won't run on 1.3 would be very useful.
For a start, I read in a magazine yesterday that XENON II protection prevents
loading on 1.3.

Myself, I plan to keep 1.2. When/If 1.4 arrives here I'll put it in one of
those rom switch dongle thingies and switch to 1.4 for serious stuff and
switch to 1.2 for games...
On another note, having forked out the extra for ram expansion *just* to play
DM, it would be nice if other games could take advantage of the extra memory.
F-18 does, so it *is* possible.

	Paul Jarrett    (paj@datlog.co.uk or {backbone}ukc!datlog!paj
Standard Disclaimer apply - These are my own view, not those of the Co. etc.

hms@h.cs.wvu.wvnet.edu (Helene M Stack,B2K,5,2913748) (01/19/90)

From article <1990Jan16.105655.23435@dlcq15.datlog.co.uk>, by paj@dlcq15.datlog.co.uk (Paul Jarrett):
> In article <7711@nigel.udel.EDU> GWO110%URIACC.BITNET@brownvm.brown.edu (F. Michael Theilig) writes:
>>
>>     More seriously, I would like to create a list of software that doesn't
>> work properly with various hardware/software combinations.  What say?
>>
> 
> Yes, good idea. Even a list of s/w that won't run on 1.3 would be very useful.
> For a start, I read in a magazine yesterday that XENON II protection prevents
> loading on 1.3.



   Nope!  I have the 1.3 ROMs and XenonII loads and runs just fine.

   In fact, I haven't come across anything that 1.3 won't load, except Archon.
A shame to have to loose it, but that's the price you pay... 

   Anyway, you can't always believe everything you read, Paul.

   A list of software and its running environment would be a grand idea, I
think. Anyone else?

hamilton@intersil.uucp (Fred Hamilton) (01/19/90)

In article <652@h.cs.wvu.wvnet.edu>, hms@h.cs.wvu.wvnet.edu (Helene M Stack,B2K,5,2913748) writes:
> From article <1990Jan16.105655.23435@dlcq15.datlog.co.uk>, by paj@dlcq15.datlog.co.uk (Paul Jarrett):
> 
> 
>    Nope!  I have the 1.3 ROMs and XenonII loads and runs just fine.
> 
>    In fact, I haven't come across anything that 1.3 won't load, except Archon.
> A shame to have to loose it, but that's the price you pay... 
                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^

The price you pay for WHAT?  The price I paid for Archon and Artic Fox was
well over $50.  I was expecting to be able to continue playing them for a
while longer than one OS rev, or I wouldn't have shelled out the bucks to
EA.  I really hate their "all our customers are pirates/we don't need to 
support our software after its initial shipment" attitude.

-- 
Fred Hamilton                  Any views, comments, or ideas expressed here
Harris Semiconductor           are entirely my own.  Even good ones.
Santa Clara, CA

new@udel.edu (Darren New) (01/19/90)

In article <652@h.cs.wvu.wvnet.edu> hms@h.cs.wvu.wvnet.edu (Helene M Stack,B2K,5,2913748) writes:
>   In fact, I haven't come across anything that 1.3 won't load, except Archon.
>A shame to have to loose it, but that's the price you pay... 

Not at all...  Here is a little gem that come thru here in source form a while
back.  I just tested it, and Archon I will run under 1.3. I remember Archon II
also running under 1.3 with this, but I didn't test it just now.  The problem
seems to be in the presence of fast memory.  This program switches to
supervisor mode and then jumps to $F80000 or something like that, which
evidently boots 1.3 after bypassing the auto-config tests.  Run this,
which will reboot the machine, and then when the hand appears, insert
you archon disk.   Executable (smallest I've seen yet) follows:

begin 644 RebootNoFast
M```#\P`````````"``````````$````$`````````^D````$+'D````$3J[_1
7:D[Y`/@``````_(```/J`````````_($$
``
end
size 68

			    -- Darren

valentin@cbmvax.commodore.com (Valentin Pepelea) (01/20/90)

In article <65.25b64544@intersil.uucp> hamilton@intersil.uucp (Fred Hamilton) writes:
>In article <652@h.cs.wvu.wvnet.edu>, hms@h.cs.wvu.wvnet.edu (Helene M Stack,B2K,5,2913748) writes:
>> 
>>    In fact, I haven't come across anything that 1.3 won't load, except Archon.
>> A shame to have to loose it, but that's the price you pay... 
>                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^
>The price you pay for WHAT?  The price I paid for Archon and Artic Fox was
>well over $50.  I was expecting to be able to continue playing them for a
>while longer than one OS rev, or I wouldn't have shelled out the bucks to EA.

I bought Arctic Fox for $5.99 a week ago, and it works fine on my Amiga 1000
with Kickstart 1.3.

Valentin