English Amiga Board


Go Back   English Amiga Board > Main > Amiga scene

 
 
Thread Tools
Old 14 July 2024, 17:40   #5401
Bruce Abbott
Registered User
 
Bruce Abbott's Avatar
 
Join Date: Mar 2018
Location: Hastings, New Zealand
Posts: 2,799
Quote:
Originally Posted by Thorham View Post
The Amiga wasn't aimed at just games and was sold with an OS right from the start, so you're obviously wrong.
As were all home computers. I didn't say it was aimed at just games or only for 'bare metal' programming, so no I'm not obviously wrong.

Neither was this unusual. If any home computer was not designed for 'bare metal' game programming, it was soon done anyway.

The problem with the Amiga was that it had a complex preemptive multitasking OS and hardware that needed significant help from that OS to work. Weak OS support for games meant that you had to hit the hardware both for performance and to get effects you might want. The system did allow some low level usage, but that would limit what you could do. US games developers tended to embrace this 'hybrid' model, while Europeans preferred to take over the whole machine like they did on other home computers.

Most of the more technically impressive games took over the machine, and by publishing the Hardware Reference Manual Commodore gave developers tacit approval to do it. Being able to boot the machine from a floppy disk also encouraged it, as did not having a protected OS. In the early days the OS was so buggy that developers couldn't be faulted for wanting to avoid it. In later years Commodore regretted this, but by then it was too late.
Bruce Abbott is offline  
Old 14 July 2024, 18:11   #5402
Bruce Abbott
Registered User
 
Bruce Abbott's Avatar
 
Join Date: Mar 2018
Location: Hastings, New Zealand
Posts: 2,799
Quote:
Originally Posted by Thorham View Post
For games that's perfectly acceptable.
Only on retro machines where the hardware is well defined.

As time went on the variety of hardware would increase, eventually making it impossible for developers to support it all. This is what was happening in the PC world under DOS. Hardware manufacturers tried to to accommodate it with 'compatibility' modes, but this was tricky to get right and carrying that baggage around made the hardware more complex. Even if the industry hadn't moved to Windows it would eventually have developed a system like DirectX.

This is why I say we are fortunate that Commodore expired when they did. The next generation would have to virtualize the hardware to make progress, making life difficult for 'bare metal' coders. This did actually happen to some extent as different hardware was developed in later years. If you want your game to work with RTG graphics cards and/or 3rd party sound cards then you have to use the 'standard' APIs made to access them, along with drivers supplied by the device makers - most of which are closed-source.
Bruce Abbott is offline  
Old 14 July 2024, 18:50   #5403
paraj
Registered User
 
paraj's Avatar
 
Join Date: Feb 2017
Location: Denmark
Posts: 1,261
Quote:
Originally Posted by Bruce Abbott View Post
Only on retro machines where the hardware is well defined.

As time went on the variety of hardware would increase, eventually making it impossible for developers to support it all. This is what was happening in the PC world under DOS. Hardware manufacturers tried to to accommodate it with 'compatibility' modes, but this was tricky to get right and carrying that baggage around made the hardware more complex. Even if the industry hadn't moved to Windows it would eventually have developed a system like DirectX.

This is why I say we are fortunate that Commodore expired when they did. The next generation would have to virtualize the hardware to make progress, making life difficult for 'bare metal' coders. This did actually happen to some extent as different hardware was developed in later years. If you want your game to work with RTG graphics cards and/or 3rd party sound cards then you have to use the 'standard' APIs made to access them, along with drivers supplied by the device makers - most of which are closed-source.

VBE (https://en.wikipedia.org/wiki/VESA_BIOS_Extensions) was something like that for graphics, for sound it was a bit more wild but mostly settled on SB/Adlib compatible HW in the later years though many game still came with support for more or less popular alternatives.

Windows also virtualized the HW to a certain degree (remember games only working in fullscreen and dying if you pressed the windows button?). Bigbox AGA machines are a bit worse off, because the graphics card doesn't know about the "legacy modes", but had things worked out differently you could image a graphics card that worked better with native AGA modes, and you could have done something similar with MMU+a bit (a lot) of work.

If you're changing CPU architecture at the same time things are different of course, and it's looking more like Mac M68k->PPC or PPC->68k which I think were harder breaks.

You're not wrong of course, but just saying that the equivalent switch to Windows for games took quite a bit of time. There were still DOS games that supported my Voodoo 1 card when I got that in IIRC 1998, and from memory it was only with Red Alert that I really knew I needed to run games in Windows rather than DOS (think it only supported 320x200 in DOS but higher res at roughly same speed with DirectX). The latter is from memory though, so take with a grain of salt.
paraj is offline  
Old 14 July 2024, 18:57   #5404
TCD
HOL/FTP busy bee
 
TCD's Avatar
 
Join Date: Sep 2006
Location: Germany
Age: 46
Posts: 32,176
Quote:
Originally Posted by Bruce Abbott View Post
As were all home computers.
Calling a BASIC interpreter with some I/O additions an OS is a bit of a stretch though.
TCD is online now  
Old 14 July 2024, 19:34   #5405
paraj
Registered User
 
paraj's Avatar
 
Join Date: Feb 2017
Location: Denmark
Posts: 1,261
Quote:
Originally Posted by TCD View Post
Calling a BASIC interpreter with some I/O additions an OS is a bit of a stretch though.
Those were just much less capable OSes (thinking mostly about C64 here). If none of the functions could realistically be used by a user program I agree it mostly doesn't count. If the OS is mostly avoided because it's slow or not very capable early DOS or CP/M would also have to be discounted.


AmigaOS is clearly more at the same generation as at least Win3.11 and ahead on many points since the latter was crippled by the DOS legacy. Lacking process isolation I've go to say that Win95+ is ahead though it was still doing a few things better conceptually.
paraj is offline  
Old 14 July 2024, 22:51   #5406
Thorham
Computer Nerd
 
Thorham's Avatar
 
Join Date: Sep 2007
Location: Rotterdam/Netherlands
Age: 48
Posts: 3,876
Quote:
Originally Posted by Bruce Abbott View Post
If any home computer was not designed for 'bare metal' game programming, it was soon done anyway.
Out of necessity. Just try to write Turrican 2 in C64 BASIC
Quote:
Originally Posted by Bruce Abbott View Post
Only on retro machines where the hardware is well defined.
Of course. Just try that now on the peecee
Thorham is offline  
Old Yesterday, 05:52   #5407
Promilus
Registered User
 
Join Date: Sep 2013
Location: Poland
Posts: 873
Quote:
Originally Posted by TCD View Post
Calling a BASIC interpreter with some I/O additions an OS is a bit of a stretch though.
Funny... so Kernal ain't OS, but CP/M & MSDOS are? Or will you claim that basically every PC up to 95 (Win95 release date) did not have OS at all as most of them used MSDOS... (and usually only business clients used Win3.1/ or NT line).
Promilus is online now  
Old Yesterday, 07:53   #5408
hammer
Registered User
 
Join Date: Aug 2020
Location: Sydney/Australia
Posts: 1,114
Quote:
Originally Posted by paraj View Post
VBE (https://en.wikipedia.org/wiki/VESA_BIOS_Extensions) was something like that for graphics, for sound it was a bit more wild but mostly settled on SB/Adlib compatible HW in the later years though many game still came with support for more or less popular alternatives.

Windows also virtualized the HW to a certain degree (remember games only working in fullscreen and dying if you pressed the windows button?). Bigbox AGA machines are a bit worse off, because the graphics card doesn't know about the "legacy modes", but had things worked out differently you could image a graphics card that worked better with native AGA modes, and you could have done something similar with MMU+a bit (a lot) of work.

If you're changing CPU architecture at the same time things are different of course, and it's looking more like Mac M68k->PPC or PPC->68k which I think were harder breaks.

You're not wrong of course, but just saying that the equivalent switch to Windows for games took quite a bit of time. There were still DOS games that supported my Voodoo 1 card when I got that in IIRC 1998, and from memory it was only with Red Alert that I really knew I needed to run games in Windows rather than DOS (think it only supported 320x200 in DOS but higher res at roughly same speed with DirectX). The latter is from memory though, so take with a grain of salt.
Quake 2 (1997), Tomb Raider II (1997), Epic Games' Unreal (1998), Diablo (1997) and StarCraft (1998) were released for Windows 95/98 with no DOS versions.
hammer is offline  
Old Yesterday, 08:19   #5409
hammer
Registered User
 
Join Date: Aug 2020
Location: Sydney/Australia
Posts: 1,114
Quote:
Originally Posted by Bruce Abbott View Post
Only on retro machines where the hardware is well defined.

As time went on the variety of hardware would increase, eventually making it impossible for developers to support it all. This is what was happening in the PC world under DOS. Hardware manufacturers tried to to accommodate it with 'compatibility' modes, but this was tricky to get right and carrying that baggage around made the hardware more complex. Even if the industry hadn't moved to Windows it would eventually have developed a system like DirectX.
.
PC DOS gaming settled for VGA and Adlib/SoundBlaster/SoundBlaster Pro standards.

NEC led VBE was short-lived when Windows DirectX was the big elephant in the room.

Intel's PCI displaced NEC led VESA's VLB.

Microsoft's DirectX displaced NEC led VESA's VBE.

"Wintel" is a real heavyweight. NEC and IBM couldn't compete against Intel and Microsoft duo.

For DirectDraw, DirectShow and Direct3D, Microsoft learns its lessons from Apple's MacOS/QuickDraw/QuickTime and SGI OpenGL.

MacOS and big iron RISC Unix 3D accelerated workstations are the road map.

Intel ARC GPU cards doesn't have legacy VGA while AMD's Radeon and NVIDIA GeForce line still have legacy VGA.
hammer is offline  
Old Yesterday, 08:44   #5410
Thomas Richter
Registered User
 
Join Date: Jan 2019
Location: Germany
Posts: 3,355
Quote:
Originally Posted by TCD View Post
Calling a BASIC interpreter with some I/O additions an OS is a bit of a stretch though.
That depends on the system, actually. The "Kernal" wasn't really much of an Os, but the Atari 8-bit Os was actually a quite well-developed Os which actually already had handlers, the possibility to mount custom handlers on it, a three-layer system with a central IO-function similar to that of CP/M, a handler-layer and a serial-low-level communication layer.

Actually, the Atari Os was developed by OSS (a company of that name, really) which first offered it as AP/M, a lookalike of CP/M for the Apple.

Basic was just one of the applications on top of the Os, but there were others, like either a file system menu (the DUP) or a command line interpreter (not very unlike CP/M actually).
Thomas Richter is offline  
Old Yesterday, 08:54   #5411
Thomas Richter
Registered User
 
Join Date: Jan 2019
Location: Germany
Posts: 3,355
Quote:
Originally Posted by Bruce Abbott View Post
Only on retro machines where the hardware is well defined.
Actually, even that is not quite the case. The Atari hardware had three generations (NTSC only, no enhanced GTIA modes, then with the enhanced modes, and in PAL and NTSC), and the Os already helped you there to provide you with information on which frequency you operated and thus how many lines a display had. That required programs already to adjust their timing and display setup, which sometimes worked better but sometimes worse. There was no great abstraction.

With Amiga, this already deviated from this by having OCS, ECS, AGA in PAL and NTSC. But today's machines are software-defined, and there is nothing bad about it. It is just moving the interface "one layer on top" of the hardware where, instead of "poking registers", you make system calls. This helps to address address a wide range of hardware with a narrow range of functions, e.g. the graphics.library (with the help of P96) can address OCS, ECS, AGA and about 20 different (and sometimes even extremely different) hardware cards.
Thomas Richter is offline  
Old Yesterday, 10:00   #5412
Turrican_3
C= and Amiga aficionado!
 
Turrican_3's Avatar
 
Join Date: Jul 2017
Location: Italy
Posts: 334
Quote:
Originally Posted by Bruce Abbott View Post
This is why I say we are fortunate that Commodore expired when they did. The next generation would have to virtualize the hardware to make progress, making life difficult for 'bare metal' coders.
Oh yeah I'm sooo happy Commodore was so badly managed it went out of business hence making my favourite personal computing platform ever, the Amiga, die with it so that nobody could write games without hitting the hardware directly.

Turrican_3 is offline  
 


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

Similar Threads
Thread Thread Starter Forum Replies Last Post
A1200 RF module removal pics + A1200 chips overview eXeler0 Hardware pics 2 08 March 2017 00:09
Sale - 2 auctions: A1200 mobo + flickerfixer & A1200 tower case w/ kit blakespot MarketPlace 0 27 August 2015 18:50
For Sale - A1200/A1000/IndiAGA MkII/A1200 Trapdoor Ram & Other Goodies! fitzsteve MarketPlace 1 11 December 2012 10:32
Trading A1200 030 acc and A1200 indivision for Amiga stuff 8bitbubsy MarketPlace 17 14 December 2009 21:50
Trade Mac g3 300/400 or A1200 for an A1200 accellerator BiL0 MarketPlace 0 07 June 2006 17:41

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 17:54.

Top

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc.
Page generated in 0.34563 seconds with 16 queries