|
View Poll Results: What level of support/testing should game devs cover | |||
They should support accelerators in all their prods | 35 | 45.45% | |
They should only target stock Amigas, let the WHD team fix the gltiches | 36 | 46.75% | |
Hardware manufacturers should enable a way for devs to disable their product programmatically | 5 | 6.49% | |
They should go to another platform like SNES/MD/NEOGEO/C64/ZX | 1 | 1.30% | |
Voters: 77. You may not vote on this poll |
|
Thread Tools |
28 February 2021, 11:34 | #81 | |||
Registered User
Join Date: Jul 2015
Location: The Netherlands
Posts: 3,408
|
Quote:
Quote:
HDD installs means losing around 230KB of RAM over a floppy trackloader boot. On a 512KB or 1MB system, that is an awful lot to give up. And that's just the RAM you lose, you also lose a significant portion of CPU time to the OS and much more if you also start using the OS to do in-game GFX. Quote:
This comment shows my problem with your point in a single sentence. It's really a quite ignorant thing to say. Last edited by roondar; 28 February 2021 at 11:50. |
|||
28 February 2021, 11:43 | #82 | |
Ex nihilo nihil
Join Date: Oct 2017
Location: CH
Posts: 4,856
|
Quote:
|
|
28 February 2021, 11:53 | #83 | |||||||
Registered User
Join Date: Mar 2018
Location: Hastings, New Zealand
Posts: 2,544
|
Quote:
Quote:
The reality is that a lot of games did work better with a hard drive, more RAM or even an accelerator card. In some cases they needed the extra speed because they were ported from the PC without being painstakingly optimized for the Amiga, but in other cases (eg. flight simulators) there was always a need for more speed than a 7MHz 68000 can deliver. Why should developers have been hamstrung by users refusing to purchase hardware powerful enough to run their games properly? This has nothing to do with a "user base's fanatical loyalty that would not let go of the platform" but simply users wanting to get a better experience from their machines. Many Amiga users didn't even know what was happening on other platforms, but they would have wanted to keep up with the latest Amiga technology regardless. Quote:
Quote:
The problem with a lot of Amiga 'coders' is that instead of reading and understanding the official documentation they copy stuff from other coders who are just as ignorant. They can't be bothered dealing with the OS so they take over the machine and do everything themselves, and then they do have a problem with different hardware configurations - as well as pissing off users who have more capable machines. These days any Amiga owner can easily upgrade their machine at low cost, so it is not too onerous to expect a few Megs of FastRAM and a hard drive for those games that could use it (and games that don't should tolerate it). Developing for the Amiga is different from other platforms like the C64 and ZX Spectrum. You have a very capable multitasking OS at your disposal, and quite likely a hard drive and extra memory or even a faster CPU. Don't avoid all that goodness just because you are too lazy to familiarize yourself with the platform you are coding for. Don't be like Microsoft, who ignored Commodore's guidelines and produced a BASIC interpreter that used the upper 8 bits of 32 bit addresses for other purposes! Don't assume that RAM will be in certain locations and ignore it if not. Use OS functions for stuff like loading files and allocating memory - it's not hard! If you must kill the OS and manipulate the hardware directly, make sure you fully understand how it works! Quote:
Quote:
Quote:
I need my accelerator card for stuff like programming (which I spend several hours a day doing), browsing the web, transferring files over the network, and playing games that need it. If it went faulty I would be very unhappy, so I won't risk damaging it by unplugging and reinserting it every time I want to play a game (besides which it's a right pain to do). I don't mind turning off CPU caches or FastRAM, but I shouldn't have to go to that effort for a modern program. Last edited by Bruce Abbott; 28 February 2021 at 12:07. |
|||||||
28 February 2021, 12:36 | #84 | |
Registered User
Join Date: Mar 2018
Location: Hastings, New Zealand
Posts: 2,544
|
Quote:
But mostly I use my Amigas for fun (which could be programming, browsing the web, listening to music or playing games - perhaps all at the same time!) and a faster system is more fun. |
|
28 February 2021, 18:58 | #85 | ||||||||
Registered User
Join Date: Oct 2017
Location: Sunderland, England
Posts: 2,702
|
Quote:
Quote:
Quote:
Quote:
Quote:
Quote:
Quote:
Quote:
As it's obvious you're an experienced programmer you likely forgot what it was like when you were starting out programming an Amiga, the pitfalls you made, the frustrations you had...but then I may be wrong because you probably did everything Commodore allowed you to do and you followed all of the rules. |
||||||||
28 February 2021, 19:11 | #86 |
Registered User
Join Date: Jul 2013
Location: Liverpool
Posts: 2,595
|
|
28 February 2021, 19:30 | #87 |
Registered User
Join Date: Oct 2017
Location: Sunderland, England
Posts: 2,702
|
|
28 February 2021, 19:52 | #88 |
Amiga Addict
Join Date: May 2002
Location: Shropshire/UK
Age: 42
Posts: 253
|
I picked the stock option as I think that is the minimum, but I believe anything is fine as long as the dev is clear what they are targeting. There's games that target NG Amigas that I will likely never see as a Classic fan, and that's fine too. But no-one should be feeling an obligation to support a certain platform.
|
28 February 2021, 20:21 | #89 |
Returning fan!
Join Date: Jan 2011
Location: Montréal, QC, Canada
Posts: 1,434
|
Hi all!
My apologies if this point has been already brought up in this very interesting thread I understand Phx and others' point that developers should know what they do and, in theory, I agree of course! But, practically, it seems to me that most developers, nowadays, are solo amateurs (in the noble sense of the term!), who code in their spare time and have little-to-no time to read all the documentation out there, find all the tricks (when they are documented...), and test on multiple platforms (if they have them). I wonder if what we're missing, as a community, is a place that consolidates all the documentations, explains the pitfalls, surveys all the tricks, provides examples, supports developers, etc. for games as well as applications. A solid developers' Web site. I mean, the EAB community offers a lot of support but the "barrier to entry" and "learning curve" are still quite high nonetheless. Hyperion's Wiki helps for applications, but mostly for OS4, I don't know how much it helps for games. Cheers! Last edited by tygre; 28 February 2021 at 20:22. Reason: Some typos; registering |
28 February 2021, 20:56 | #90 |
Ex nihilo nihil
Join Date: Oct 2017
Location: CH
Posts: 4,856
|
Pssssst : https://www.lemonamiga.com/games/lis...20Owl%20Design
https://www.lemonamiga.com/games/lis...ist_title=sqrx Not to mention: http://phoenix.owl.de/phxass_e.html You may find others projects as well if you search a bit |
28 February 2021, 22:13 | #91 |
Pixelglass/Reimagine
Join Date: Jun 2012
Location: Athens
Posts: 1,031
|
My 2 cents on McGeezer's question (what level of support/testing should game devs cover?).
A couple facts first (honestly, whatever anyone's opinion is, I don't think there's really any dispute with these). a) Unlike other retro systems (f.e. most 8-bit micros, gaming consoles e.t.c.) the Amiga platform is highly fragmented and there are way too many different configurations, OS versions, Kickstarts, hardware add ons e.t.c. to take into account. It's a no brainer that as the list goes up, so does the testing and support required. Which takes time and resources (and a lot of learning and experimentation). b) Good coding practices and deeper knowledge of the system can indeed ensure a better level of compatibility with most classic hardware still. How do we know this? There are arleady tons of games that display such properties and have absolutely no issues running on the vast majority of Amiga hardware, including vanilla classics, expanded machines e.t.c. Having said that there are always going to be fringe cases, as exotic or custom configurations are not uncommon in Amiga land. With the above in mind and to comprehensively answer the question at hand, one also needs to take into account a few other factors: 1) What is the level of experience of the dev? If you're a complete rookie and you're just started, try and support the bare minimum. Finishing a complete game already takes a lot of time and I wouldn't expect anyone to be able and figure out everything on his first go. From that point on it only makes sense to get better at this and reach a better level of support and understanding eventually. This is a gradual (and not an "all or nothing") approach so it really depends on the dev in question. 2) What level of support/testing is the dev himself willing to pour into his game? This is extremely personal and depends on why you are developing in the first place. If you want max appeal then -by all means- you need to support/test as much as your abilities allow. If you're in it just to have fun with coding/development, then simply focus on the coding/development parts that are fun for you. There are perfectionists that love to tinker with the slightest detail and defect and others that absolutely loath this process and are more interested in the trip and the broader experience while making a game (or just for educational purposes). Anything goes in this case. 3) The type of the game in question. Are we talking about free or commercial games? In the first case there is no clear answer and it depends solely on whatever the developer fancies (see above). However things are completely different in regards to commercial products. Here there's the obvious obligation of the dev, to ensure that everyone who has purchased his game has a good experience (at least on a technical level), meaning first and foremost the game should run as intended and it's as bug free as possible. You can -of course- still draw the line on what hardware you are willing to support, but you need to know and communicate that properly (so testing on most reasonable and common configs is necessary and inevitable). 4) Speaking of which, testing itself is not such a big deal, for starters we've got UAE and then there's a limitless supply of people with plenty real machines to test on (granted you lack them yourself) and the willingness to help. Plus there's also the community feedback (for non commercial and open developed games). |
01 March 2021, 10:58 | #92 | |
Registered User
Join Date: Jun 2015
Location: Germany
Posts: 1,918
|
Quote:
As for the OS overhead: this is usually vastly overestimated. Yes, Shadow of the Beast would not have been possible through the OS but a lot of other (including more entertaining) games would have been possible. It is simply annoying if you can't play say Tetris on the Amiga while downloading something from aminet because the l33t c0d3r was worried about the ten clock cycles he would lose to the operating system. Even more so if you have many times more clock cycles available than the cheapest Amiga system. If anything killed the Amiga, it was the obsession for support of the low end models. |
|
01 March 2021, 11:04 | #93 |
Registered User
Join Date: Jul 2015
Location: The Netherlands
Posts: 3,408
|
OS overhead on low end models (i.e. A500) is around 20-30% CPU and around 100-150KB RAM (much more if you have a HDD or more floppy drives). I measured this several times. It fluctuates and you do get some frames where it's a little less and some where it's a great deal more, but it's definitely not insignificant on the low end models.
Edit: I do want to add here that the above is neither a statement about the OS or it's quality, nor about whether or not you should code in a system friendly manner. It's just about making sure we have some of the facts about OS overhead in this discussions, rather than just subjective statements about overhead (which I have also made). Last edited by roondar; 01 March 2021 at 11:18. |
01 March 2021, 11:40 | #94 |
Registered User
Join Date: Dec 2019
Location: Ur, Atlantis
Posts: 1,899
|
I must say, the bashing of old-time coders in this thread for being lazy, ignorant, or whatever, from the comfortable point of being ~30 years in the future is really quite something. It's as if they were all highly salaried senior programmers in some serious outfits, and not (very) young people in a still young industry, who often learnt as they went, had tight budgets and strict time constraints. Not to mention the bedroom coders and other amateurs who often achieved amazing results.
Unfortunately, apparently this is not good enough for the people from the future. |
01 March 2021, 11:42 | #95 | |
Registered User
Join Date: Oct 2017
Location: Sunderland, England
Posts: 2,702
|
Quote:
I'm talking about the OS routines that Commodore supply to access the hardware, I'm pretty sure you (and others) know what I meant - maybe I'll do it a third and fourth time though so you can keep telling me I'm wrong. |
|
01 March 2021, 11:57 | #96 | |
Registered User
Join Date: Jul 2015
Location: The Netherlands
Posts: 3,408
|
Quote:
|
|
01 March 2021, 11:59 | #97 | |
Registered User
Join Date: Mar 2016
Location: Australia
Posts: 881
|
Quote:
When I say "system friendly", this means it allocates any hardware resources before "banging", and uses OS routines for all interrupt processing etc (no accessing the vector table). The game will happily co-exist with a network stack downloading files. Other than that, the code between the two versions is identical. I have various tests I run to measure performance. I thought it would be interesting to run the "system friendly" version on an A500 with no fast ram with the OS running and compare it with the "OS off" version. The simplest performance measurement is the number of "dropped" frames - that is, the number of times it took more than the expected number of vertical blank interrupts to render a frame. The "OS off" version drops no frames during the test. The "system friendly" version dropped 5% of frames. Note: many scenes in the test sequence are not "busy" so there is little chance of a frame being dropped in these cases. So during busy times in the game, the frames are being dropped much more than 5% of the time. It was quite noticeable slowdown. So based on these results for me, it's seems that on an A500, the OS running in the background has a significant negative performance impact. If we run the same test on a standard A1200 with no fast ram, we are back to no dropped frames. |
|
01 March 2021, 12:11 | #98 | |
Registered User
Join Date: Dec 2019
Location: Ur, Atlantis
Posts: 1,899
|
Quote:
It's perhaps a bit different with commercial products though. |
|
01 March 2021, 13:29 | #99 | |||
Registered User
Join Date: Jul 2015
Location: The Netherlands
Posts: 3,408
|
Quote:
Quote:
Quote:
Last edited by roondar; 01 March 2021 at 13:33. Reason: Combined two replies into one. |
|||
01 March 2021, 14:02 | #100 |
Registered User
Join Date: Jun 2015
Location: Germany
Posts: 1,918
|
We are discussing whether present day coders should repeat mistakes that were already mistakes 30 years ago.
|
Currently Active Users Viewing This Thread: 1 (0 members and 1 guests) | |
Thread Tools | |
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
Retrokompott Gamescom live stream with many retro game devs | rsn8887 | Retrogaming General Discussion | 1 | 15 September 2020 05:03 |
support.hardware - sections? | BMD | project.EAB | 9 | 29 September 2018 22:25 |
WinUAE & AD516 Hardware support | Pyromania | support.WinUAE | 2 | 16 July 2016 14:17 |
C64SD V3.0 Princess - The first SD2IEC with tap file support! [Hardware Review] | Neil79 | Retrogaming General Discussion | 28 | 13 January 2015 03:54 |
DEVS:kickstart | narud17 | project.WHDLoad | 4 | 06 March 2005 18:29 |
|
|