Welcome, Guest. Please login or register.

Author Topic: PC still playing Amiga catchup  (Read 218604 times)

Description:

0 Members and 58 Guests are viewing this topic.

Offline Karlos

  • Sockologist
  • Global Moderator
  • Hero Member
  • *****
  • Join Date: Nov 2002
  • Posts: 16879
  • Country: gb
  • Thanked: 5 times
    • Show all replies
Re: PC still playing Amiga catchup
« Reply #119 from previous page: June 18, 2009, 09:06:37 PM »
Quote from: Wayne;512133
What really gets to me on the pet peeve level is that in 2009, a full 15 years after the death of Commodore, there are still those so desperate to hang on to "what used to be", that they invent the smallest, most asinine reasons that they believe the Commodore Amiga -- a computer almost 8 times removed from Moore's Law -- is still a commercially competitive (not to even mention viable) platform...


I find it doubly bizarre that those who regard it in that light are usually quite dismissive of things like UAE that can actually transform an OS3.x installation into a platform that can actually hold it's own thanks to the exponential increase in raw horsepower you get from it.
int p; // A
 

Offline Karlos

  • Sockologist
  • Global Moderator
  • Hero Member
  • *****
  • Join Date: Nov 2002
  • Posts: 16879
  • Country: gb
  • Thanked: 5 times
    • Show all replies
Re: PC still playing Amiga catchup
« Reply #120 on: June 18, 2009, 09:09:47 PM »
Quote from: koaftder;512101
Did somebody say crack!? Oh goodie!



OMG, it's 420Dude :lol:
int p; // A
 

Offline Karlos

  • Sockologist
  • Global Moderator
  • Hero Member
  • *****
  • Join Date: Nov 2002
  • Posts: 16879
  • Country: gb
  • Thanked: 5 times
    • Show all replies
Re: PC still playing Amiga catchup
« Reply #121 on: June 19, 2009, 01:19:28 AM »
Quote from: amigaksi;512196
If you look at just the I/O overhead involved for fetching state of joystick, you will see that it involves multiple I/O instructions and other overhead and it's slower than a MOVE.W of Amiga.  And you are going through API which doesn't allow you to take over the USB for just joystick.

Nobody wants to poll the joystick at 1kHz. Nobody anywhere in the entire world. Nobody, that is, except for you.

Let's just distil all this down to the basic facts here.

You have not given any evidence, anecdotal or otherwise to demonstrate that any commercial software ever written for the Amiga uses high resolution joyport polling to better capture the user's input.

The single, meaningful example of why polling the joystick at anything like the kHz range makes sense was given not by you, but by me. That example was the cassette tape interface for ZXAM which basically converts the incoming tape audio to a series of pulses on the joyport fire pin.

Your ability to record the joystick at a high rate in no way whatsoever demonstrates that River Raid (your chosen example) does so. Your sole evidence for this was that replaying events captured at a higher rate gave better, more predictable results. That does not tell you anything about the actual sample rate of the game itself. All it tells you is that you can better reconstruct the original joystick event stream by recording it at a higher rate. This is basic sampling theory: the reconstruction of any signal is better at higher sampling rates. It does not mean that the game is sampling at this rate. For instance, if I sample spectrum audio at 8kHz, replaying it back to the spectrum tends not to work very well. Recording and replaying at 22kHz works very well. We do not infer from this that the spectrum is reading data at 11kHz (the highest frequency you can hope to reconstruct at 22kHz). Far from it, it switches between 1-2 kHz using PWM encoding for bits.

The joystick example is the same. Even if River Raid samples the joystick once per frame only, you will be able to replay a recorded sequence of events more accurately if that recording is at a much higher sample rate than the game is using, simply because your recorded signal more closely resembles the original signal at higher rates and not because the game requires it.

So, you might very well be able to poll your joystick at a faster rate using CIA timing but I'm still waiting for an explanation as to what tangible advantage this gives with respect to human input for a joystick.
« Last Edit: June 19, 2009, 01:22:45 AM by Karlos »
int p; // A
 

Offline Karlos

  • Sockologist
  • Global Moderator
  • Hero Member
  • *****
  • Join Date: Nov 2002
  • Posts: 16879
  • Country: gb
  • Thanked: 5 times
    • Show all replies
Re: PC still playing Amiga catchup
« Reply #122 on: June 19, 2009, 07:50:53 AM »
Quote from: stefcep2;512239
Interesting.  So what you are saying is that its the lack of raw computing power of the hardware-not the OS itself- that prevents it from holding its own?


In this day and age, I'd say the lack of horsepower was the bigger handicap compared to modern machines. More horsepower allows you to upgrade almost everything else about the system without it impacting on the end user experience. OS3.x has a few fundamental deficiencies that horsepower alone can't really fix (lack of protected memory, no SMP capability etc) but as far as the basic role of an OS goes, I don't think it's nearly as antiquated as the hardware. AmiKit demonstrates this quite well. You can run it on a real amiga, but it feels slow (certainly on my kit) compared to an unmodified 3.x. On UAE, however, it's fine. Faster than basic 3.9 is on my 040 by a wide margin.
int p; // A
 

Offline Karlos

  • Sockologist
  • Global Moderator
  • Hero Member
  • *****
  • Join Date: Nov 2002
  • Posts: 16879
  • Country: gb
  • Thanked: 5 times
    • Show all replies
Re: PC still playing Amiga catchup
« Reply #123 on: June 19, 2009, 10:54:28 PM »
Quote from: smerf;512384
Now my A4000 which gets turned on for use at least twice a week hasn't crashed since 1993 and still has my data on it since then, and I must admit my 2 gig hard drive is getting quite full, I still have about 1.2 gig free for use, might be another 10 years and I will have to think about installing a larger hard drive.

PC users can you claim this?

smerf

My work PC had an uptime of over 1 year until a power cut took it down. That's one full year of running a full desktop environment, without crashing or manual rebooting.

It was running fedora 5. After the reboot it was running fedora 10 ;)
« Last Edit: June 19, 2009, 10:56:55 PM by Karlos »
int p; // A
 

Offline Karlos

  • Sockologist
  • Global Moderator
  • Hero Member
  • *****
  • Join Date: Nov 2002
  • Posts: 16879
  • Country: gb
  • Thanked: 5 times
    • Show all replies
Re: PC still playing Amiga catchup
« Reply #124 on: June 19, 2009, 11:04:06 PM »
Quote from: Hammer;512389
The X64 PC can still run MS-DOS 1.0.


I wouldn't be so sure about that, unless you mean via an emulation. I thought 16-bit support was dropped in 64-bit mode. Not that I've checked too deeply.
int p; // A
 

Offline Karlos

  • Sockologist
  • Global Moderator
  • Hero Member
  • *****
  • Join Date: Nov 2002
  • Posts: 16879
  • Country: gb
  • Thanked: 5 times
    • Show all replies
Re: PC still playing Amiga catchup
« Reply #125 on: June 19, 2009, 11:21:48 PM »
Quote from: Hammer;512394
Due to the dominance of 3D FPS and RTS, the mouse is the primary gaming device on the PC.


Don't forget racing simulations. Here, you still get wheels, pedals etc.
int p; // A
 

Offline Karlos

  • Sockologist
  • Global Moderator
  • Hero Member
  • *****
  • Join Date: Nov 2002
  • Posts: 16879
  • Country: gb
  • Thanked: 5 times
    • Show all replies
Re: PC still playing Amiga catchup
« Reply #126 on: June 20, 2009, 02:53:01 PM »
Strange that the lack of 16-bit mode in AMD64 is lambasted but the lack of direct hardware backwards compatibility for the 680x0 series is ignored ;)
int p; // A
 

Offline Karlos

  • Sockologist
  • Global Moderator
  • Hero Member
  • *****
  • Join Date: Nov 2002
  • Posts: 16879
  • Country: gb
  • Thanked: 5 times
    • Show all replies
Re: PC still playing Amiga catchup
« Reply #127 on: June 20, 2009, 04:59:53 PM »
Quote from: amigaksi;512531
To eliminate 16-bit mode is a MAJOR difference as there are millions of DOS programs and Windows 3.x programs out there.  As far as I know, you can disable caching on the later 680x0 processors to make them more compatible.  Strictly, you know the frequencies are incompatible but at least they can be called opcode compatible.


No they can't. Many opcodes are not supported on later 680x0 processors that were supported by earlier ones.

The 68020 changed the behaviour of some opcodes on the 68000 that will cause any software using them to crash. You cannot move bits from or to the status register outside of supervisor mode on 68020+. Since most operations on this register were actually condition code related, they added opcodes to read/write the CCR instead none of which can be used on the 68000. So, you can write code that uses the SR in userspace on the 68000 that won't work on the 68020+ or code that uses the CCR in userspace on the 68020 which won't work on the 68000. You either use separate code for each CPU or you install a trap handler of some sort for the privilege violation. It cannot be called opcode compatible any more.

Next, the 68040 threw away dozens of valid 68881 opcodes. You cannot use any of the transcendal operations or use the 68881/2 mathematical constants. You will get an illegal exception if you try to do so. Again, you must either write code that does not use these opcodes, or you install a handler for the unimplemented instruction exception and emulate them on trap.

Next, the 68060 threw away 64-bit integer arithmetic (multiply and divide) that were implemented in 68020, 68030 and 68040. You cannot use any of these opcodes without invoking an illegal instruction exception. Again, you must rewrite your code not to use them or install a handler for the unimplemented instruction exception and emulate them on trap.

The 680x0 series is not fully backwards compatible purely in hardware. It must use software assist. It says so in my copies of the user manuals and the examples above are all easily demonstrated.
int p; // A
 

Offline Karlos

  • Sockologist
  • Global Moderator
  • Hero Member
  • *****
  • Join Date: Nov 2002
  • Posts: 16879
  • Country: gb
  • Thanked: 5 times
    • Show all replies
Re: PC still playing Amiga catchup
« Reply #128 on: June 20, 2009, 05:08:00 PM »
Quote from: the_leander;512548
So minor that the Phase5 had to provide dummy 68040 libraries to even allow an 060 based accelerator card to boot. 5.

Mind you, CyberPatcher was a fantastic system though. Why trap unimplemented instructions when you can replace them with a direct branch to the handler code after the first trap?

-edit-

Quote
You are biased if you think the 68000 is incompatible with 680x0 processors.

What's biased about it? It's just the way it is. Motorola actually did a good job in making the SR privileged and dumping the least used instructions into software emulation for later CPUs. It allowed them to focus on making the silicon faster for the vast majority of object code.

You only have to look at the 68040 FPU performance compared to the 68882 or the 060 performance compared to the 040 to see they were right to do so. The only thing that surprised me was dropping the 64-bit arithmetic in the 060. I wouldn't have thought that was underutilized in the previous models.
« Last Edit: June 20, 2009, 05:11:45 PM by Karlos »
int p; // A
 

Offline Karlos

  • Sockologist
  • Global Moderator
  • Hero Member
  • *****
  • Join Date: Nov 2002
  • Posts: 16879
  • Country: gb
  • Thanked: 5 times
    • Show all replies
Re: PC still playing Amiga catchup
« Reply #129 on: June 21, 2009, 10:54:10 AM »
@the_leander

You can boot an 040 machine without the 040.library, so long as you don't run SetPatch (and I mean, come on, who wants to have bugs in their OS fixed anyway, right) and go straight for a no Startup-Sequence boot.

What you get then is something that claims to be 68040 without any FPU support. Data caches are also typically disabled, since without the 68040.library you don't get your MMU support in order to mark different regions as cacheable or not (see first attachment). So without the MMU, all memory is marked non cacheable since ChipRAM and cache don't really mix.

Running SetPatch installs the 68040 library, adding handlers for the unimplemented instructions, enables the MMU and turns on caching for fast memory (see second attachment)

So in short, yes you can "boot" an 040 system without the library, but it really isn't worth it.
int p; // A
 

Offline Karlos

  • Sockologist
  • Global Moderator
  • Hero Member
  • *****
  • Join Date: Nov 2002
  • Posts: 16879
  • Country: gb
  • Thanked: 5 times
    • Show all replies
Re: PC still playing Amiga catchup
« Reply #130 on: June 21, 2009, 11:32:08 AM »
Quote from: warpdesign;512654
Amiga is dead but its gameport is still the best... and so on.


But is it? I can plug a large hard disk in what passes for my PC's gameport today and transfer files through it at over 400Mb/s.

I can't really do that on the amiga gameport.
int p; // A
 

Offline Karlos

  • Sockologist
  • Global Moderator
  • Hero Member
  • *****
  • Join Date: Nov 2002
  • Posts: 16879
  • Country: gb
  • Thanked: 5 times
    • Show all replies
Re: PC still playing Amiga catchup
« Reply #131 on: June 21, 2009, 12:13:10 PM »
Quote from: the_leander;512663
I stand corrected.


Not entirely, though. The stability of the 040 system, if allowed to boot up to a full workbench without the 040.library would be seriously compromised. Any code compiled for an FPU will fail the moment it calls any operation the 040 had to emulate.
int p; // A
 

Offline Karlos

  • Sockologist
  • Global Moderator
  • Hero Member
  • *****
  • Join Date: Nov 2002
  • Posts: 16879
  • Country: gb
  • Thanked: 5 times
    • Show all replies
Re: PC still playing Amiga catchup
« Reply #132 on: June 21, 2009, 12:15:03 PM »
Quote from: bloodline;512661
I think warpdesign was being ironic :)


No, I realise that. It was for our "amiga joyport is superior" friend.
int p; // A
 

Offline Karlos

  • Sockologist
  • Global Moderator
  • Hero Member
  • *****
  • Join Date: Nov 2002
  • Posts: 16879
  • Country: gb
  • Thanked: 5 times
    • Show all replies
Re: PC still playing Amiga catchup
« Reply #133 on: June 21, 2009, 01:58:38 PM »
Quote from: stefcep2;512683
Just when you thought it was safe to kiss this thing goodbye:  RAM: disk.  Discuss.


I like the RAM disk. I like RAD even more, in that you can copy a minimal OS install into one and it's very nippy.

The original idea behind the RAM disk was for rapid temporary storage, especially on floppy based Amigas. If you have a fast hard disk, there's less reason to use it. The other use for it is to hold your environment data. However, it isn't really best suited for this, particularly if there are lots of small files (as ENV tends to become). HappyEnv eliminates this problem.

So, the question remains, what does your RAM disk get used for now? Well, there's still T: and CLIPS:

Does anybody with a hard disk make regular use of their RAM disk for temporary extractions and so on these days?
int p; // A
 

Offline Karlos

  • Sockologist
  • Global Moderator
  • Hero Member
  • *****
  • Join Date: Nov 2002
  • Posts: 16879
  • Country: gb
  • Thanked: 5 times
    • Show all replies
Re: PC still playing Amiga catchup
« Reply #134 on: June 21, 2009, 02:11:51 PM »
Quote from: stefcep2;512692
1.  Hard drives are fast, but files are so big.  So access from hard drive on a PC will never be as fast as access from a dynamic RAM: drive.

Erm, that's a bit of a silly way to put it. Really big files aren't going to fit comfortably into memory either. Chances are they'll get paged out to hard disk anyway.

Quote
2. Writing and deleting files frequently as would happen if you used your hard drive as a dumping ground for eg unarchiving stuff which you delete afterwards results in disk fragmentation, reducing your PC's performance over time.

That really depends on your filesystem. Using your Amiga's RAM disk to save disk fragmentation is all well and good but you're ultimately just fragmenting the memory instead. Which isn't a great idea. With 256MB of ram, I've been unable to run an application needing 32MB without a reboot due to this issue.

Quote
3.  Its a pain to have to delete unwanted files, wouldn't you just prefer they weren't there next time ypou booted... oh hang-on no-one here boots up anymore so yeah you have to remember to delete otherwise you'll soon have a lot of crap you don't want filling mots of yor hard drive.( don't tell me, hard drives are so BIG now THAT akso doesn't matter).

Use /tmp for your dumping ground and use tmpwatch. Problem solved.

Quote
4.  what about installing and running software in RAM just to check it out?

Sure, that's handy sometimes.

Incidentally, you do realise that RAM disks are available on other operating systems, right?

For example:

Quote
$ mkdir /var/ramdisk
$ mount -t tmpfs none /var/ramdisk -o size=16m

Et voila, a 16MiB ram disk. It's actually more like RAD, in that it's fixed size, but like RAM: it's entirely volatile.
« Last Edit: June 21, 2009, 02:15:49 PM by Karlos »
int p; // A