English Amiga Board


Go Back   English Amiga Board > Coders > Coders. General

 
 
Thread Tools
Old 19 May 2021, 09:30   #41
mcgeezer
Registered User

 
Join Date: Oct 2017
Location: Sunderland, England
Posts: 2,426
Quote:
Originally Posted by Bruce Abbott View Post
I agree. Patches should only be used when you don't have the source.

Yes. All new games will be coded bare metal to work only on a specific machine, and every other Amiga will need WHDLoad to run them. Any bugfixes will be applied via WHDLoad. Then WHDLoad will be integrated into the latest OS so nobody who doesn't upgrade to it will be able to run them. This will be called 'progress'.

WHDLoad is very useful for running old games on more modern Amigas. But I don't use it because I can't be bothered setting it up. These days anything that isn't 'point and click' or takes longer than 10 seconds to figure out loses my interest very rapidly. The Amiga was supposed to make such frustrations a thing of the past. You would think that after 30 years that goal would have been achieved.

Those who have coded on the platform for 30 odd years
appear to have zero compassion or empathy for those coming back to the platform after 30 years.

If all dev's wrote perfect code day in, day out from scratch then we wouldn't have any bugs in software at all. In fact, let's just do away with patching all together and version numbers and let the perfect software
roam free.

Thankfully most developers (except a handful who seem to frequent this forum) do make mistakes when writing software/games, leading to the need to release patches for their software.

Even the best developers make coding mistakes leading to patch releases, so as a game dev myself how thankful I am that the guys writing the WHD slaves can create a patch quickly to fix and enhance certain things in a game without me having to go back and re-release stuff.

WHDload isn't doing any harm to the Amiga, so there's no problem to fix.
mcgeezer is offline  
Old 19 May 2021, 09:37   #42
jotd
This cat is no more
jotd's Avatar
 
Join Date: Dec 2004
Location: FRANCE
Age: 49
Posts: 5,687
@mcgeezer I would have patched SIESMIC MINDS if you left that in

Quote:
WHDload isn't doing any harm to the Amiga, so there's no problem to fix.
I don't see how a program that is not a virus is doing harm to a machine. People who don't want to use it, just don't use it. But then don't request "dos fixes" or "aga fixes" because they're really a waste of time (except for very few exceptions like CDTV compilations...).
jotd is offline  
Old 19 May 2021, 09:39   #43
meynaf
son of 68k
meynaf's Avatar
 
Join Date: Nov 2007
Location: Lyon / France
Age: 48
Posts: 4,348
Quote:
Originally Posted by mcgeezer View Post
Those who have coded on the platform for 30 odd years
appear to have zero compassion or empathy for those coming back to the platform after 30 years.

If all dev's wrote perfect code day in, day out from scratch then we wouldn't have any bugs in software at all. In fact, let's just do away with patching all together and version numbers and let the perfect software
roam free.

Thankfully most developers (except a handful who seem to frequent this forum) do make mistakes when writing software/games, leading to the need to release patches for their software.

Even the best developers make coding mistakes leading to patch releases, so as a game dev myself how thankful I am that the guys writing the WHD slaves can create a patch quickly to fix and enhance certain things in a game without me having to go back and re-release stuff.

WHDload isn't doing any harm to the Amiga, so there's no problem to fix.
And one day someone will release a 'fix' for one of your games without asking you and break something in the process but YOU will receive the bug report.
meynaf is offline  
Old 19 May 2021, 09:41   #44
jotd
This cat is no more
jotd's Avatar
 
Join Date: Dec 2004
Location: FRANCE
Age: 49
Posts: 5,687
Quote:
Originally Posted by meynaf View Post
When there is an existing slave for the game, yes, but you would probably not create a new one just for that, will you ?

someone asked for a slave. I created it (not too much work), added a trainer, removed LMB=>quit (annoying) (all of those are optional!) and then I noticed the typo.

The file is packed with cranker or equivalent, that doesn't have any depacker so DOS patch / trainer is not as easy as with uncompressed or PP/RNC packed games you have to write a LoadSeg loader first.
jotd is offline  
Old 19 May 2021, 09:51   #45
mcgeezer
Registered User

 
Join Date: Oct 2017
Location: Sunderland, England
Posts: 2,426
Quote:
Originally Posted by meynaf View Post
And one day someone will release a 'fix' for one of your games without asking you and break something in the process but YOU will receive the bug report.
Yes God forbid this could happen, it's not exactly the end of the World is it.

As soon as you establish they're using the WHD version you can either say (1) It's not supported under that version/any WHD and/or (2) Contact the slave author to fix it.
mcgeezer is offline  
Old 19 May 2021, 09:53   #46
mcgeezer
Registered User

 
Join Date: Oct 2017
Location: Sunderland, England
Posts: 2,426
Quote:
Originally Posted by jotd View Post
@mcgeezer I would have patched SIESMIC MINDS if you left that in
I even registered the domain... I wanted the ground to swallow me up after you showed me that

You did fix other typos though...

"
fixed typo in title ("LEGENDARDY" => "LEGENDARY")"
mcgeezer is offline  
Old 19 May 2021, 09:58   #47
modrobert
old bearded fool

modrobert's Avatar
 
Join Date: Jan 2010
Location: Bangkok
Age: 54
Posts: 593
Quote:
Originally Posted by Bruce Abbott View Post
I agree. Patches should only be used when you don't have the source.
Source code always helps, even when patching in WHDLoad. When the developer/author(s) of a game or demo decides they don't want a feature or fix support for certain hardware, or they turn inactive, then what? A source fork handled in a repository elsewhere?

Quote:
Originally Posted by Bruce Abbott View Post
Yes. All new games will be coded bare metal to work only on a specific machine, and every other Amiga will need WHDLoad to run them. Any bugfixes will be applied via WHDLoad. Then WHDLoad will be integrated into the latest OS so nobody who doesn't upgrade to it will be able to run them. This will be called 'progress'.
WHDLoad is a very efficient and system friendly sandbox providing max compatibility with optional patching at launch, to me this is an elegant method as media is not patched directly/permanently.

Besides, take any library, like MUI for example, many developers use it, and now you have dependencies as a user, how is that any different?

If a developer makes an OS friendly game which can run from the hard drive, and is compatible with most hardware then there is no need for WHDLoad. If someone still wants to make a slave for it, to add some feature, does it matter? It's all optional to use. The developer can add the feature as well, so many choices and all beneficial.

Quote:
Originally Posted by Bruce Abbott View Post
But I don't use it because I can't be bothered setting it up. These days anything that isn't 'point and click' or takes longer than 10 seconds to figure out loses my interest very rapidly. The Amiga was supposed to make such frustrations a thing of the past. You would think that after 30 years that goal would have been achieved.
Quote:
Originally Posted by Bruce Abbott View Post
Perhaps, but ProAsm, BAsm and PhxAss don't accept it. Since these are the only assemblers I use...
First time I encounter a fellow assembler programmer who relies on "point and click".

CLI or Shell...
Code:
whdload game.slave
Too hard for you?

Last edited by modrobert; 19 May 2021 at 10:40.
modrobert is offline  
Old 19 May 2021, 10:03   #48
meynaf
son of 68k
meynaf's Avatar
 
Join Date: Nov 2007
Location: Lyon / France
Age: 48
Posts: 4,348
Quote:
Originally Posted by mcgeezer View Post
Yes God forbid this could happen, it's not exactly the end of the World is it.

As soon as you establish they're using the WHD version you can either say (1) It's not supported under that version/any WHD and/or (2) Contact the slave author to fix it.
Not the end of the world but an annoyance and a waste of time.

Also imagine someone released a patch and now you want to make a new version including all fixes made. So you do your release and now the whd patch does not work anymore - it's of course not necessarily the slave author who will receive the reports for that.
At the end : more work for everyone. For what benefit ?
meynaf is offline  
Old 19 May 2021, 10:22   #49
modrobert
old bearded fool

modrobert's Avatar
 
Join Date: Jan 2010
Location: Bangkok
Age: 54
Posts: 593
Quote:
Originally Posted by meynaf View Post
Not the end of the world but an annoyance and a waste of time.

Also imagine someone released a patch and now you want to make a new version including all fixes made. So you do your release and now the whd patch does not work anymore - it's of course not necessarily the slave author who will receive the reports for that.
At the end : more work for everyone. For what benefit ?
How about looking at this as a distribution media/option?

So you release a new game from your own website, make a post in the forum about it. Without doing anything else you get a bunch of more users who found your game through whdload.de and then get the media from your website and play it that way. The only drawback is that you sometimes have to ask users to report bugs somewhere else.
modrobert is offline  
Old 19 May 2021, 10:43   #50
meynaf
son of 68k
meynaf's Avatar
 
Join Date: Nov 2007
Location: Lyon / France
Age: 48
Posts: 4,348
Quote:
Originally Posted by modrobert View Post
How about looking at this as a distribution media/option?

So you release a new game from your own website, make a post in the forum about it. Without doing anything else you get a bunch of more users who found your game through whdload.de and then get the media from your website and play it that way. The only drawback is that you sometimes have to ask users to report bugs somewhere else.
A bizarre way of seeing things, a site distributing games that forces the use of a specific tool. Instead, better have a site referencing games regardless of the way they are made.
But yes, the point is somehow valid. Would bring some indirect benefit.
I doubt of its efficiency though. Making PC versions should bring more users (probably, i wouldn't know which forum to post it on).
meynaf is offline  
Old 19 May 2021, 10:45   #51
mcgeezer
Registered User

 
Join Date: Oct 2017
Location: Sunderland, England
Posts: 2,426
Quote:
Originally Posted by meynaf View Post
Not the end of the world but an annoyance and a waste of time.

Also imagine someone released a patch and now you want to make a new version including all fixes made. So you do your release and now the whd patch does not work anymore - it's of course not necessarily the slave author who will receive the reports for that.
At the end : more work for everyone. For what benefit ?
I actually have this very scenario with Turbo Sprint, there's a few small fixes that I need to do that have been reported.

So I contact the WHDload author (who in this case is StingRay) and notify him what the changes are. Benefits...not much work at all for me, and WHD author gets a heads up so not much time for them. Maybe your definition of a lot of work differs from mine though.

Last edited by mcgeezer; 19 May 2021 at 10:52.
mcgeezer is offline  
Old 19 May 2021, 11:02   #52
roondar
Registered User

 
Join Date: Jul 2015
Location: The Netherlands
Posts: 3,006
I actually feel that the idea of a game 'sandbox' environment, like WHDLoad, makes a lot of sense. Not only because it lets you actually use the HW in ways that best fit low-end machines, but more importantly, because such an environment is far less fragile than the OS itself.

Theoretically, all these things can be fixed by writing bugless code. But in practice, that won't happen. Worse, bugless software of any complexity can't happen, as was mathematically proven decades ago.
roondar is offline  
Old 19 May 2021, 11:23   #53
modrobert
old bearded fool

modrobert's Avatar
 
Join Date: Jan 2010
Location: Bangkok
Age: 54
Posts: 593
Quote:
Originally Posted by meynaf View Post
A bizarre way of seeing things, a site distributing games that forces the use of a specific tool. Instead, better have a site referencing games regardless of the way they are made.
But yes, the point is somehow valid. Would bring some indirect benefit.
I doubt of its efficiency though. Making PC versions should bring more users (probably, i wouldn't know which forum to post it on).
Yes, not efficient considering the work done (time spent), that's for sure, but I think it makes sense in an enthusiast community. Was just thinking about how great HOL is for Amiga game info, reviews, manuals, and more.

A question for the WHDLoad Team:

If a developer clearly states that they don't want a WHDLoad slave for their project, would that be honored?

I'm not sure what the policy is, but doubt a slave would be made, at least while the developer is still active.

Last edited by modrobert; 19 May 2021 at 11:30.
modrobert is offline  
Old 19 May 2021, 11:28   #54
meynaf
son of 68k
meynaf's Avatar
 
Join Date: Nov 2007
Location: Lyon / France
Age: 48
Posts: 4,348
Quote:
Originally Posted by mcgeezer View Post
I actually have this very scenario with Turbo Sprint, there's a few small fixes that I need to do that have been reported.

So I contact the WHDload author (who in this case is StingRay) and notify him what the changes are. Benefits...not much work at all for me, and WHD author gets a heads up so not much time for them. Maybe your definition of a lot of work differs from mine though.
Happy that it works for you, but maybe one day you'll have a not so kind slave author or one who got fed up / lacks time / whatever and you'll end up with old versions in the wild, that you have no control on.
In any case, that's still more work than just doing your thing alone. Or maybe you have the slave author do your debug work at your place ? Not a bad move indeed


Quote:
Originally Posted by roondar View Post
I actually feel that the idea of a game 'sandbox' environment, like WHDLoad, makes a lot of sense. Not only because it lets you actually use the HW in ways that best fit low-end machines, but more importantly, because such an environment is far less fragile than the OS itself.
It does not fit low-end machines. High-end, rather.
But yes, whdload can be seen as a fine debugging tool.


Quote:
Originally Posted by roondar View Post
Theoretically, all these things can be fixed by writing bugless code. But in practice, that won't happen.
In practice, it does not matter at all. If you can afford running whdload (i.e. switch off the OS), there is no program currently running that would suffer from a system going off.
In addition, bugs that can lead to a global system crash aren't the ones that will go inconspicuous (esp. for years). Bugs that remain "forever" are minor glitches which depend on specific conditions to trigger. Or at least, they should be.
And this can be returned : if bugless software does not exist, you'd rather not add whdload's bugs to your own. As more software just means more bugs.


Quote:
Originally Posted by roondar View Post
Worse, bugless software of any complexity can't happen, as was mathematically proven decades ago.
Mathematically proven ? Just that ? I want to see it. Where's the proof ?
meynaf is offline  
Old 19 May 2021, 11:45   #55
mcgeezer
Registered User

 
Join Date: Oct 2017
Location: Sunderland, England
Posts: 2,426
Quote:
Originally Posted by meynaf View Post
Happy that it works for you, but maybe one day you'll have a not so kind slave author or one who got fed up / lacks time / whatever and you'll end up with old versions in the wild, that you have no control on.
In any case, that's still more work than just doing your thing alone. Or maybe you have the slave author do your debug work at your place ? Not a bad move indeed
As the author of the slave is here in the thread I'm sure he can answer for himself.

but then there's nothing stopping me from creating or taking over the slaves myself, but then of course you'll say "well just add the functionality into the game" which results in us going round in circles.

I think you're clutching at straws in an attempt to try and present a problem here that really just does not exist. Plenty valid reasons have been put forward already to use WHDload with new releases. The downsides are just not washing with me.
mcgeezer is offline  
Old 19 May 2021, 11:52   #56
roondar
Registered User

 
Join Date: Jul 2015
Location: The Netherlands
Posts: 3,006
Quote:
Originally Posted by meynaf View Post
It does not fit low-end machines. High-end, rather.
But yes, whdload can be seen as a fine debugging tool.
I meant that using WHDLoad for higher end machines allows you to write code that fits low-end machines better.

Quote:
Mathematically proven ? Just that ? I want to see it. Where's the proof ?
Godel's Incompleteness Theorem means you can't prove a program is 'correct'. Also, the Halting Problem means you can't prove your program will not halt/crash. There's probably more, but those two by themselves are more than enough.

More to the point, there has been a lot of research into proving correctness of programs and the end conclusion still is: it's really, really hard, requires you to define what correct means fully and even then only is able to prove it fits your chosen definition of 'correct', which can't be proven to be correct thanks, again, to Godel.

Professor Gernot Heiser did this for a 7500 line kernel. It took him and his six man team five years of full time work to get to the point where it was proven to work according to his definitions. But, as I pointed out, no one can prove that the definitions used for program correctness themselves are correct (due to Godel) so even he didn't actually prove his program was bug-free.
roondar is offline  
Old 19 May 2021, 12:46   #57
meynaf
son of 68k
meynaf's Avatar
 
Join Date: Nov 2007
Location: Lyon / France
Age: 48
Posts: 4,348
Quote:
Originally Posted by mcgeezer View Post
As the author of the slave is here in the thread I'm sure he can answer for himself.

but then there's nothing stopping me from creating or taking over the slaves myself, but then of course you'll say "well just add the functionality into the game" which results in us going round in circles.

I think you're clutching at straws in an attempt to try and present a problem here that really just does not exist. Plenty valid reasons have been put forward already to use WHDload with new releases. The downsides are just not washing with me.
Then just go this way. When you'll hit the downsides, you'll finally see them. Else indeed we're going in circles.


Quote:
Originally Posted by roondar View Post
I meant that using WHDLoad for higher end machines allows you to write code that fits low-end machines better.
That's clear now.
But you can write code that fits low-end machines without being broken for high-end ones.
And I fail to see in which way whdload could be better than doing that at source level.


Quote:
Originally Posted by roondar View Post
Godel's Incompleteness Theorem means you can't prove a program is 'correct'. Also, the Halting Problem means you can't prove your program will not halt/crash. There's probably more, but those two by themselves are more than enough.

More to the point, there has been a lot of research into proving correctness of programs and the end conclusion still is: it's really, really hard, requires you to define what correct means fully and even then only is able to prove it fits your chosen definition of 'correct', which can't be proven to be correct thanks, again, to Godel.

Professor Gernot Heiser did this for a 7500 line kernel. It took him and his six man team five years of full time work to get to the point where it was proven to work according to his definitions. But, as I pointed out, no one can prove that the definitions used for program correctness themselves are correct (due to Godel) so even he didn't actually prove his program was bug-free.
There is a logical error here. Absence of proof isn't proof of absence. IOW That you can't prove something does not in any manner prove that it's not true.
So you cannot prove a program is bugfree, certainly - however that does not imply there are actual bugs in it. You just can't know.
meynaf is offline  
Old 19 May 2021, 12:59   #58
jotd
This cat is no more
jotd's Avatar
 
Join Date: Dec 2004
Location: FRANCE
Age: 49
Posts: 5,687
Quote:
If a developer clearly states that they don't want a WHDLoad slave for their project, would that be honored?
I would comply, until developer goes bust / dies

okay, now to try to counter the trolling that's going on here (not in that particular remark above which is a legitimate question!!), now just to be objective, I'll take an example of what whdload brings:

cdtv machines have hardware that trigger interrupts. It sends what can be seen as spurious interrupts to programs that turn off the OS.

a few examples:

- whdload detects cdtv.device, turns it off, then on on exit. It also has custom pre-post scripts that you setup once and for all.
startup/end script has been improved for years. Each game may have a very good startup/end process it cannot compete with one single program mostly dedicated to that.

- whdload has plans to add read joypad support, with Vampire support for extra buttons (extra reg DFF222). Should have appeared earlier, but how many programs will support those buttons without whdload? (and without a patched lowlevel library if ever those programs use it which isn't 100%, not even 50%)

- whdload can introduce delays when reading/writing on slow devices.

- whdload support all CPUs, has no memory leaks, triple checks all stuff on startup, frees everything on exit, has centralized options and customizable startup/stop scripts...

All those features are centralized in whdload.


now can we stop the trolling about whdload? I guess not.

Last edited by jotd; 19 May 2021 at 13:06.
jotd is offline  
Old 19 May 2021, 13:02   #59
mcgeezer
Registered User

 
Join Date: Oct 2017
Location: Sunderland, England
Posts: 2,426
Quote:
Originally Posted by meynaf View Post
And I fail to see in which way whdload could be better than doing that at source level.

I'll ask then the same question to you like I asked the others.

You have a game that has a requirement to load and save files to storage while having full access to the system - i.e. banging the hardware.

How would you then tackle using DOS library calls (game loading/saving) so your game supports CD32/hard drives and floppies?
mcgeezer is offline  
Old 19 May 2021, 13:39   #60
meynaf
son of 68k
meynaf's Avatar
 
Join Date: Nov 2007
Location: Lyon / France
Age: 48
Posts: 4,348
Quote:
Originally Posted by mcgeezer View Post
I'll ask then the same question to you like I asked the others.

You have a game that has a requirement to load and save files to storage while having full access to the system - i.e. banging the hardware.

How would you then tackle using DOS library calls (game loading/saving) so your game supports CD32/hard drives and floppies?
Bang the hardware only when strictly necessary and after having got access to it thru the system. You OwnBlitter, allocate channels thru audio.device, get timers with ciaa/ciab.resource, etc.
Then DOS calls will be extremely easy and, nice bonus, will never make these black screen flashes. Your game will be able to use any hardware (such as a serial mouse) that your OS can, even if it needs weird drivers. It will of course use a lot less memory than with whdload.
meynaf is offline  
 


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

Similar Threads
Thread Thread Starter Forum Replies Last Post
Games on HD without WHDLoad Sim085 support.Other 12 29 August 2020 00:07
WHDLoad Games ? Washac support.Games 11 24 February 2020 16:43
How do I make HD games not WHDLoad Games spannernick support.Games 3 01 May 2012 21:03
whdload instructions? [where to put WHDLoad games for GameBase Amiga v1.4] luke_70it project.MAGE 8 28 October 2009 06:36
Some WHDLoad games haynor666 request.Old Rare Games 3 07 February 2003 02:27

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 21:13.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2021, vBulletin Solutions Inc.
Page generated in 0.12853 seconds with 13 queries