English Amiga Board


Go Back   English Amiga Board > Support > support.Hardware

 
 
Thread Tools
Old 29 December 2018, 16:10   #1
E-Penguin
Banana

 
Join Date: Jul 2016
Location: Darmstadt
Posts: 733
"file is not executable" with Fast mem added?

Here's a strange one... In my A500plus I have an on-socket 8mb fast ram and an A590. The firmware on the expansion has been set so as to not do autoconfig if the A590 is plugged in (because I need that to be seen first in order to load the scsi.device, etc).

I start workbench (2.0) and addmem the 8mb - everything looks fine, I can see it in "avail" and on the workbench title bar.

If I try to start any programs though (apart from avail and cli), I get an error "file is not executable".

It gets weirder. I can do lots of 'newcli' followed by 'avail' and see the fast mem is being used for these processes. So the memory is there and is usable.

I tried putting the addmem statement in startup-sequence but then workbench doesn't start, with the same "not executable" error.

I understand this is fundamentally an incompatibility between the A590 and the memory, but it seems so close!

Any ideas?
E-Penguin is offline  
Old 29 December 2018, 16:19   #2
Toni Wilen
WinUAE developer
 
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 43
Posts: 22,222
Most likely reason is non-DMA capable RAM board. You can try setting mask in hdtoolbox to force all transfers to/from chip ram (0xfffff) but it will make transfers 3x+ slower..
Toni Wilen is online now  
Old 29 December 2018, 16:45   #3
E-Penguin
Banana

 
Join Date: Jul 2016
Location: Darmstadt
Posts: 733
PFS does not like that, errors about mask not matching ram type. Do I need to delete and recreate / format the partition?

You might have hit the nail on the head though - booting from floppy and running addmem, etc, from there works fine. I assume the floppy is read into chip memory by Paula.
E-Penguin is offline  
Old 29 December 2018, 17:44   #4
thomas
Registered User
thomas's Avatar
 
Join Date: Jan 2002
Location: Germany
Posts: 5,770
The mask does not select the memory, it only allows to check it. BufMemType in the environment vector selects the memory if the mask does not match. Unfortunately you cannot set this with HDToolbox.

This is how ThoR somewhere explained how FFS does it, and PFS probably, too: the buffer address given for read or write is checked against the mask. If it fits (i.e. no bits set in the address which are not set in the mask), then the buffer is used as is. If the mask does not fit, it allocates a new buffer using BufMemType and copies the data to that for DMA.

Apparently PFS checks the newly allocated buffer against the mask again and complains if it still does not fit. FFS probably does not do this additional check and thus might run into DMA errors without notice.
thomas is offline  
Old 29 December 2018, 19:13   #5
E-Penguin
Banana

 
Join Date: Jul 2016
Location: Darmstadt
Posts: 733
Ah, thanks. I'll throw some env at it and see if that works
E-Penguin is offline  
Old 29 December 2018, 19:15   #6
thomas
Registered User
thomas's Avatar
 
Join Date: Jan 2002
Location: Germany
Posts: 5,770
Quote:
Originally Posted by E-Penguin View Post
I'll throw some env at it
What???
thomas is offline  
Old 29 December 2018, 21:04   #7
E-Penguin
Banana

 
Join Date: Jul 2016
Location: Darmstadt
Posts: 733
Setenv BufMemType 2

Is what I'm currently trying. No luck so far. Might I need a mount list, bearing in mind this is the boot device?
E-Penguin is offline  
Old 29 December 2018, 22:14   #8
thomas
Registered User
thomas's Avatar
 
Join Date: Jan 2002
Location: Germany
Posts: 5,770
What you need is a program which can poke the value into the partition table.

Everything which is stored on the partition (like env variables or mount lists) can only be read when the partition is already mounted. But when the partition is already mounted it is too late to change mount parameters.

But don't worry, there is a solution: I added this feature to my ChangeBootPri program.
http://thomas-rapp.homepage.t-online...ngebootpri.lha
thomas is offline  
Old 29 December 2018, 23:59   #9
E-Penguin
Banana

 
Join Date: Jul 2016
Location: Darmstadt
Posts: 733
Thanks, I'll have a look at that.

My plan b is to copy the mount list to ram:, dismount dh0: then remount it with the mount list, before calling addmem then continuing with the boot. It's a bit sideways though.
E-Penguin is offline  
Old 30 December 2018, 13:40   #10
E-Penguin
Banana

 
Join Date: Jul 2016
Location: Darmstadt
Posts: 733
You guys are brilliant! Thanks

The magic sauce was:
Code:
changebootpri BufMemType 2
And mask set to 0x1FFFFC
E-Penguin is offline  
Old 03 January 2019, 01:08   #11
E-Penguin
Banana

 
Join Date: Jul 2016
Location: Darmstadt
Posts: 733
Slight weirdness remains; copying files which are larger than available chip mem gives this out-of-memory error (see attached; from a winuae setup but same hardware/software setup).

If I do "Copy BUF=200 somefile dh0:test/", or otherwise specify "BUF" to something, it works. It's only dragging & dropping that the copy fails.

The error shown only when using PFS3aio (latest) but FFS 45.16 doesn't successfully copy either.

It's as if the Copy function is attempting to allocate the temporary copy buffers in Chip but is over-allocating. The AmigaOS user manual tells me that BUF=200 is the default, so it's not clear why this is happening.

It only occurs when using the non-DMA fast mem, with bufmemtype=2 (chip).

I fear I'm flogging a dead horse of a memory expansion.
Attached Thumbnails
Click image for larger version

Name:	Untitled.png
Views:	31
Size:	5.0 KB
ID:	61426  
E-Penguin is offline  
Old 03 January 2019, 11:35   #12
hooverphonique
ex. demoscener "Bigmama"
 
Join Date: Jun 2012
Location: Fyn / Denmark
Posts: 829
The size of the filesystem buffers have nothing to do with the memory used when copying a file. During copy it is entirely up to the application performing the copy how much memory it uses. In your case it seems that drag n'drop tries to allocate as much memory as the filesize, which then fails - it's been too long since I tried that to remember if that's always how Workbench does it.
hooverphonique is online now  
Old 03 January 2019, 12:25   #13
E-Penguin
Banana

 
Join Date: Jul 2016
Location: Darmstadt
Posts: 733
The command line "copy" does use buffers. I imagine the workbench copy routine is similar, but I can't find any info on that.

https://wiki.amigaos.net/wiki/AmigaO...Reference#COPY

It's all very strange
E-Penguin is offline  
Old 03 January 2019, 14:00   #14
hooverphonique
ex. demoscener "Bigmama"
 
Join Date: Jun 2012
Location: Fyn / Denmark
Posts: 829
I misread your post, you didn't really mention filesystem buffers..

Does it work when using the CLI copy command without explicitly specifying buffer size?

Workbench doesn't use the CLI copy command afaik (nor is there a common/shared copy function in the OS), so you can't expect drag n'drop to perform the same...

For performance reasons it makes sense to use the same type of memory for copy than is specified for bufmemtype (to support dma), maybe that's why it uses a chipmem buffer when bufmemtype is set to chip.

Last edited by hooverphonique; 03 January 2019 at 14:37.
hooverphonique is online now  
Old 03 January 2019, 16:17   #15
daxb
Registered User
 
Join Date: Oct 2009
Location: Germany
Posts: 2,165
Which OS and Copy version do you use? If I remember right there was a bug on an old Copy version that tries to allocate memory in the amount of file size and fails when not enough memory is available. But normally fast memory is used first.
daxb is offline  
Old 03 January 2019, 17:49   #16
E-Penguin
Banana

 
Join Date: Jul 2016
Location: Darmstadt
Posts: 733
Wb2.1 - it does look like a problem with trying to allocate the whole file in memory. Smaller files are OK.
E-Penguin 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
"Open with" tool for iconless, non-executable files in workbench 3.1? Yulquen74 support.Apps 2 28 June 2018 21:59
Difference WHDLoad-Games "normal" & "fast" pellewolf project.WHDLoad 3 25 July 2017 16:38
Question A1200 (Rev B2) PCMCIA mem-speed "slow" issue SortedGeeza support.Hardware 0 23 January 2016 17:53
Error "No object" generating executable from ASM-One 1.20 nandius_c Coders. Asm / Hardware 12 30 October 2013 11:28
"special" chip-mem allocation 68K-ASM Herpes Coders. System 4 13 June 2013 12:42

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


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