English Amiga Board


Go Back   English Amiga Board > Coders > Coders. System

 
 
Thread Tools
Old 04 September 2022, 10:00   #1
LeCaravage
Registered User
 
LeCaravage's Avatar
 
Join Date: May 2017
Location: AmigaLand
Posts: 456
My Amiga clears memory always

Hi,

Context : Amiga 500 KS1.3 OCS, 1Mb Chip Ram (Boobip ram trap door extension) + 1,5 F.Fast. DF0 real drive, DF1 : Hxc Drive. Oktagon HD 900Mb.

I tried to see some code of another program by reseting Amiga and right after loading Asmone (by inserting another disquette) but I didn't find anything, memory was cleaned.
And to be sure of it, I loaded severals other program and checked memory using "3rd Day" utility (gfx ripper), but same conclusion, memory seems to be cleaned during reset.
I'm puzzled why memory is always cleaned ?
I'm pretty sure it shouldn't with all programs. I plugged off my HD but no chance but I let the DF1 plugged in though.

Any clue what's going on ? Thanks
LeCaravage is offline  
Old 04 September 2022, 11:29   #2
ross
Defendit numerus
 
ross's Avatar
 
Join Date: Mar 2017
Location: Crossing the Rubicon
Age: 53
Posts: 4,468
It a 'bug' in KS1.3 and 1MB chip machines (it's the same problem that affects reset-proof programs in this very configuration).

If I'm not wrong SetPatch takes care of it.
ross is offline  
Old 04 September 2022, 12:27   #3
LeCaravage
Registered User
 
LeCaravage's Avatar
 
Join Date: May 2017
Location: AmigaLand
Posts: 456
Ok, my Amiga is not bugged then
Thanks Ross.
LeCaravage is offline  
Old 04 September 2022, 12:38   #4
Karlos
Alien Bleed
 
Karlos's Avatar
 
Join Date: Aug 2022
Location: UK
Posts: 4,118
There's a irony for you. What is seen as a bug here is today a minimum security requirement for any remotely serious OS. The last thing you want us to be able to extract data from the memory of a machine after a reboot.
Karlos is offline  
Old 04 September 2022, 14:04   #5
a/b
Registered User
 
Join Date: Jun 2016
Location: europe
Posts: 1,038
That typically happens when you trash critical part of exec's structures (it has a checksum for validation, and if it's incorrect it will do a "full init" including memory clear, at least that's what KS1.3 does).
Back in the early days my friends and I used to do that to protect our intros (not that they were anything worth protecting :P ). For example, this little instruction placed strategically will do that (a6=exec base):
Code:
  addq.w #1,36(a6)
a/b is offline  
Old 04 September 2022, 15:38   #6
paraj
Registered User
 
paraj's Avatar
 
Join Date: Feb 2017
Location: Denmark
Posts: 1,098
Quote:
Originally Posted by a/b View Post
That typically happens when you trash critical part of exec's structures (it has a checksum for validation, and if it's incorrect it will do a "full init" including memory clear, at least that's what KS1.3 does).
Back in the early days my friends and I used to do that to protect our intros (not that they were anything worth protecting :P ). For example, this little instruction placed strategically will do that (a6=exec base):
Code:
  addq.w #1,36(a6)

Pretty advanced anti-debugging technique


The bug ross mentioned is part of the execbase validation logic. It considers less than 256K or more than 512K chipmem to be invalid.
Code:
FC0196  move.l    $3E(A6),A3        Get end address of chip memory.
FC019A  cmp.l     #$080000,A3       Greater than 512K?
FC01A0  bhi.s     FC01CE            If so, it must be invalid.
FC01A2  cmp.l     #$040000,A3       Less than 256K?
FC01A8  bcs.s     FC01CE            If so, it must be invalid.

From the KS1.2 exec disassembly but the exact same code is present in 1.3 (though it was fixed for the one included with the A3000).
paraj is offline  
Old 05 September 2022, 11:36   #7
LeCaravage
Registered User
 
LeCaravage's Avatar
 
Join Date: May 2017
Location: AmigaLand
Posts: 456
I read your answers and I feel like I know very little (or almost nothing) to system coding.
Is there a book to learn Amiga 500 system programming (asm preferably) for dummy you could advice ?
LeCaravage 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
Setting a500+ trapdoor 1MB memory expansionas the default memory (no motherboard RAM) kipper2k Hardware mods 4 13 August 2022 18:15
Memory watch point on blitter writing to memory? mcgeezer support.WinUAE 12 26 June 2019 22:12
WinUAE 3.2.1. memory dump for fake fast memory areas broken StingRay support.WinUAE 1 14 December 2015 20:39
Blizzard Turbo Memory - SMD memory chips doesn't work sanjyuubi Hardware mods 5 26 May 2010 15:40
uae-configuration sound_volume clears buffer smoorke support.WinUAE 3 17 May 2008 17:54

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 10:04.

Top

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