English Amiga Board


Go Back   English Amiga Board > Coders > Coders. General

 
 
Thread Tools
Old 26 April 2021, 12:11   #101
roondar
Registered User
 
Join Date: Jul 2015
Location: The Netherlands
Posts: 3,421
Quote:
Originally Posted by Thomas Richter View Post
but the facts should be correct - and this is not the case here.
This has been a consistent pattern for litwr. And he tends to not actually change his mind all that much when the facts disagree with his opinions. Just look at this thread for some examples. The 'discussion' about the OS 'interfering' with the hardware timers is a pretty good example here (to recap: the issue was that litwr blamed the Amiga/OS for a problem, rather than admitting the real problem was his ignorance of how to properly code with the OS running).
Quote:
This is not much different from TOS, but since TOS is a single-tasking system, it can re-initiate the complete machine after the "bombs". On a multi-tasking system, one cannot do that without affecting other programs.
Well, this is partially true. But as an ex-ST user, I can tell you that the reality is that "bombs" tend to mean "system crash".

I mean, just consider the case presented by litwr here: far from TOS informing you a 68020 only instruction was encountered and continuing to work without problem*, in reality TOS displays 4 bombs when it encounters any illegal instruction (including 68020 instructions on a 68000) and then ignores the instruction.

It certainly doesn't continue without issue. After all, the real world result of randomly ignoring instructions can be guessed, but just in case other people reading the thread might wonder: ignoring random instructions almost always means your code will crash the system sooner rather than later. And if not, it certainly won't work as expected regardless.

*) litrw literally wrote "The Atari ST OS works much better, in such cases it just informs you about the problem and continues working!". This is 100% false information, TOS does not contain a 68020 emulator and doesn't handle illegal instructions any better than Amiga OS.

Last edited by roondar; 26 April 2021 at 13:34.
roondar is offline  
Old 26 April 2021, 15:18   #102
modrobert
old bearded fool
 
modrobert's Avatar
 
Join Date: Jan 2010
Location: Bangkok
Age: 56
Posts: 779
Quote:
Originally Posted by litwr View Post
I have discovered one more Amiga problem recently. Why is the Amiga OS so easy to crash? For example, any 68020 instruction causes irritating Guru Meditation on the A500 or even A2000. The Atari ST OS works much better, in such cases it just informs you about the problem and continues working! Indeed TOS doesn't look so impressive as WB but it is much more reliable. Does anybody know why WB is so easy to crash?
Have you tried GOMF?



It doesn't prevent Atari trolls, but good for unwanted Amiga Gurus.
modrobert is offline  
Old 26 April 2021, 16:29   #103
Thomas Richter
Registered User
 
Join Date: Jan 2019
Location: Germany
Posts: 3,243
Quote:
Originally Posted by modrobert View Post
Have you tried GOMF?

It doesn't prevent Atari trolls, but good for unwanted Amiga Gurus.
I wouldn't really recommend this. The trouble is that GOMF cannot find all resources a specific task allocated, and then may create more problems. A good example is if a process installs an input handler into the input device chain, and then gomf is releasing the memory and segments for a crashing task. If that happens, the input device will run bezerk as it will execute code on memory that has been released already.


Been there, done that.
Thomas Richter is offline  
Old 26 April 2021, 16:41   #104
modrobert
old bearded fool
 
modrobert's Avatar
 
Join Date: Jan 2010
Location: Bangkok
Age: 56
Posts: 779
Quote:
Originally Posted by Thomas Richter View Post
I wouldn't really recommend this. The trouble is that GOMF cannot find all resources a specific task allocated, and then may create more problems. A good example is if a process installs an input handler into the input device chain, and then gomf is releasing the memory and segments for a crashing task. If that happens, the input device will run bezerk as it will execute code on memory that has been released already.


Been there, done that.

This was more about the meaning of the acronym than anything else, guess that backfired.

From my memory fragments when testing GOMF back in the early 90s it was more of a joke than something useful. It did suspend the task, remember that much, but you still felt like pressing CTRL-Amiga-Amiga really fast. For the A500 I had Nordic Power (hardware freezer), that was more useful.

http://amiga.resource.cx/search.pl?product=nordic+power

Last edited by modrobert; 26 April 2021 at 16:49.
modrobert is offline  
Old 26 April 2021, 19:05   #105
litwr
Registered User
 
Join Date: Mar 2016
Location: Ozherele
Posts: 229
Quote:
Originally Posted by Thomas Richter View Post
No, it doesn't. It creates a "software error - task held" requester.
IMHO it is no much difference for a user. Either his choice causes Guru meditation. I actually didn't know that it is possible to do some work after this requester! I always rebooted if I got one. Thank you and Bruce Abbott very much - you really enlightened me. I was using Amiga only for two years long ago, and now I sometimes play with FS-UAE. Indeed I missed some information about the Amiga. It seems this irritates some people. I can only reminds them that to err is human - are you robots?

Quote:
Originally Posted by Bruce Abbott View Post
No we don't. The original statement I made that you objected to was that by the 90's it didn't matter how many PCs IBM sold, because PC clones dominated the market and Apple's share of that market was minuscule.

Your argument that Apple 'could' have made more money from desktop computers than IBM did over the rest of the 80's is irrelevant, even if true - which is doubtful. The graphs below show that during the 80's IBM sold a lot more PCs than Apple did Macs (and Apples), and they doubled their dividend. They didn't crash until 1993 - just like Commodore (coincidence? Or were both companies victims of the PC juggernaut?).
I meant that it doesn't really matter how much of a certain product is made, as long as you are doing something that can be sold. Apple (unlike Commodore) just showed that they made something different and was quite successful. That "juggernaut" couldn't affect Apple business - I used Macbook recently - it is a very useful thing.
Sorry your graph doesn't allow to distinguish the figures for the 80s.

Quote:
Originally Posted by Thomas Richter View Post
None of the two machines has memory protection or process isolation to prevent this. The same goes, of course, for the 68K versions of MacOs. However, there software reached a higher quality level, that's all.
It was a surprize for me but the Atari ST actually has some memory protection. I needed a timer value but I couldn't read it because it is in system memory area! TOS protects its initial memory segment from application access.

Quote:
Originally Posted by roondar View Post
This has been a consistent pattern for litwr. And he tends to not actually change his mind all that much when the facts disagree with his opinions. Just look at this thread for some examples. The 'discussion' about the OS 'interfering' with the hardware timers is a pretty good example here (to recap: the issue was that litwr blamed the Amiga/OS for a problem, rather than admitting the real problem was his ignorance of how to properly code with the OS running).

Well, this is partially true. But as an ex-ST user, I can tell you that the reality is that "bombs" tend to mean "system crash".

I mean, just consider the case presented by litwr here: far from TOS informing you a 68020 only instruction was encountered and continuing to work without problem*, in reality TOS displays 4 bombs when it encounters any illegal instruction (including 68020 instructions on a 68000) and then ignores the instruction.

It certainly doesn't continue without issue. After all, the real world result of randomly ignoring instructions can be guessed, but just in case other people reading the thread might wonder: ignoring random instructions almost always means your code will crash the system sooner rather than later. And if not, it certainly won't work as expected regardless.

*) litrw literally wrote "The Atari ST OS works much better, in such cases it just informs you about the problem and continues working!". This is 100% false information, TOS does not contain a 68020 emulator and doesn't handle illegal instructions any better than Amiga OS.
Sorry you again missed the point and are generally wrong. It is not because you wrote wrong things but because you missed some things. Sorry but you are not perfect too. However let me explain some details for you. I have just converted my number pi calculator for the Atari ST. The Atari ST is a completely new system for me. I have never used it before 2021. Indeed I use an emulator, Hatari. I accidentally run the 68020 code on the emulated Atari ST and was pleasantly surprised that it didn't crash. I attach a screenshot for you. Indeed I have an unpleasant memory that when I did the same on the Amiga I have to reboot it. So I went to ask the Amiga experts what they think about this matter. I was just curious about details. Why be so nervous in such an ordinary case?

Quote:
Originally Posted by modrobert View Post
Have you tried GOMF?
It doesn't prevent Atari trolls, but good for unwanted Amiga Gurus.
Thanks! Sorry I missed it. Maybe I will try it sometime.
Attached Thumbnails
Click image for larger version

Name:	grab0002.png
Views:	101
Size:	9.3 KB
ID:	71728  

Last edited by litwr; 26 April 2021 at 20:58.
litwr is offline  
Old 26 April 2021, 20:53   #106
meynaf
son of 68k
 
meynaf's Avatar
 
Join Date: Nov 2007
Location: Lyon / France
Age: 51
Posts: 5,332
Quote:
Originally Posted by litwr View Post
It was a surprize for me but the Atari ST actually has some memory protection. I needed a timer value but I couldn't read it because it is in system memory area! TOS protects its initial memory segment from application access.
Lower memory, as well as the hardware, can't be accessed from user mode. This is fixed by the means of custom mmu chip on the mobo, TOS does nothing about it.
This makes the ST a little more robust than the Amiga.


Quote:
Originally Posted by litwr View Post
I accidentally run the 68020 code on the emulated Atari ST and was pleasantly surprised that it didn't crash. I attach a screenshot for you.
The screenshot shows something has actually caught the cpu exception and displayed an error message. And it's not TOS, which just shows a row of bombs and returns to the desktop.
It is perfectly possible to catch the illegal instruction exception on the Amiga too, either by altering the vector directly (not recommended under OS) or by registering an exception handler in your task structure.
meynaf is offline  
Old 26 April 2021, 22:24   #107
Thomas Richter
Registered User
 
Join Date: Jan 2019
Location: Germany
Posts: 3,243
Quote:
Originally Posted by litwr View Post
IMHO it is no much difference for a user. Either his choice causes Guru meditation.
No, it doesn't. Please get your facts straight. If you click on "Suspend", the process is removed from the CPU. No software error, nothing. If nothing else of the machine is damaged, you continue working - that's it. The software error you get on "Reboot". It reboots the machine, then displays the alert.



Quote:
Originally Posted by litwr View Post

It was a surprize for me but the Atari ST actually has some memory protection.
It uses the function codes to avoid writes into the supervisor space, yes, but that's not "memory protection". It does not protect the state of the Os from getting overwritten either.



Quote:
Originally Posted by litwr View Post
I accidentally run the 68020 code on the emulated Atari ST and was pleasantly surprised that it didn't crash. I attach a screenshot for you. Indeed I have an unpleasant memory that when I did the same on the Amiga I have to reboot it.
No, you decided to reboot it. That's not the same. You can also suspend the faulty process. AmigaOs will not take down the resources the task allocated, because it cannot, there is no resource tracking. On a single-task operating system, you can just re-initialize all resources and restart the Os, and be good with it as there is nothing else that runs. But the same trick doesn't work without affecting other processes on a multi-tasking system.


Quote:
Originally Posted by litwr View Post

So I went to ask the Amiga experts what they think about this matter. I was just curious about details. Why be so nervous in such an ordinary case?
They say that you should get your facts straight.
Thomas Richter is offline  
Old 28 April 2021, 23:01   #108
litwr
Registered User
 
Join Date: Mar 2016
Location: Ozherele
Posts: 229
Quote:
Originally Posted by meynaf View Post
The screenshot shows something has actually caught the cpu exception and displayed an error message. And it's not TOS, which just shows a row of bombs and returns to the desktop.
It is perfectly possible to catch the illegal instruction exception on the Amiga too, either by altering the vector directly (not recommended under OS) or by registering an exception handler in your task structure.
I have just found out that TOS doesn't have any standard shell at all! What a strange system! Indeed there are several shells available for TOS but they do not support even the redirection of program output. Indeed it was a shell that caught the exception... I thought it was TOS behind the shell.


Quote:
Originally Posted by Thomas Richter View Post
No, it doesn't. Please get your facts straight. If you click on "Suspend", the process is removed from the CPU. No software error, nothing. If nothing else of the machine is damaged, you continue working - that's it. The software error you get on "Reboot". It reboots the machine, then displays the alert.
There is no "Suspend" or "Reboot" for WB 1.3 - it has only "Retry" and "Cancel" options and both can only invoke the Guru Meditation. Suspend/Reboot appeared only in WB 2. My Amiga did not have it.


Quote:
Originally Posted by Thomas Richter View Post
It uses the function codes to avoid writes into the supervisor space, yes, but that's not "memory protection". It does not protect the state of the Os from getting overwritten either.
Sorry, I missed your point. What do the function codes mean?

Quote:
Originally Posted by Thomas Richter View Post
No, you decided to reboot it. That's not the same. You can also suspend the faulty process. AmigaOs will not take down the resources the task allocated, because it cannot, there is no resource tracking. On a single-task operating system, you can just re-initialize all resources and restart the Os, and be good with it as there is nothing else that runs. But the same trick doesn't work without affecting other processes on a multi-tasking system.
Thank you. However my screenshot proves that an application which caused an exception is just removed, no rebooting was required. Indeed it is because TOS is single-tasking.

Last edited by litwr; 29 April 2021 at 14:57.
litwr 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
Cheap mass storage on A500/500+/1000/2000 TroyWilkins support.Hardware 23 29 September 2020 09:07
AMIGA 2000 - chipram mod gone wrong. Moklar support.Hardware 0 24 February 2020 12:43
ScanPlus ECS Scandoubler for Amiga 500, 500 plus, Amiga 1500 and Amiga 2000 RetroPassionUK MarketPlace 0 04 January 2020 16:24
Amiga 1000 Software on 500 Weemus Amiga scene 11 09 May 2012 04:48
FS/FA: ICD Flicker Free Video/Scandoubler for Amiga 500,1000,2000,Toaster vamigan MarketPlace 5 22 September 2007 02:37

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

Top

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