Looking for Amiga driver developer
- Sorgelig
- Site Admin
- Posts: 890
- Joined: Thu May 21, 2020 9:49 pm
- Has thanked: 2 times
- Been thanked: 214 times
Looking for Amiga driver developer
I want to make a way to access Linux file system from Amiga.
I know how to make it in general. It requires to write a filesystem driver. Basically a simple and tiny driver is required which will write request to shared memory and then wait for reply.
The problem is that i don't know Amiga OS. I need a developer who is familiar with Amiga OS and can help me to assign a proper resources and other internal things and write such driver.
We can re-use part of this driver:
https://github.com/niklasekstrom/a314/t ... are/a314fs
It works similarly to what i want but we don't need complexity of that HW. We simply can create a shared memory between Amiga and Linux.
If it will be done, then Minimig will get a fast file exchange like UAE.
I know how to make it in general. It requires to write a filesystem driver. Basically a simple and tiny driver is required which will write request to shared memory and then wait for reply.
The problem is that i don't know Amiga OS. I need a developer who is familiar with Amiga OS and can help me to assign a proper resources and other internal things and write such driver.
We can re-use part of this driver:
https://github.com/niklasekstrom/a314/t ... are/a314fs
It works similarly to what i want but we don't need complexity of that HW. We simply can create a shared memory between Amiga and Linux.
If it will be done, then Minimig will get a fast file exchange like UAE.
Re: Looking for Amiga driver developer
I'm not a developer, but interested in your approach.
By exposing a filesystem you refer to a block-level SCSI-like device?
By exposing a filesystem you refer to a block-level SCSI-like device?
-
- Posts: 130
- Joined: Fri Jun 19, 2020 8:54 pm
- Has thanked: 13 times
- Been thanked: 58 times
Re: Looking for Amiga driver developer
Not quite - this would be a filesystem handler - i.e. something that lives in L: rather than Devs:
Think of it more like NFS, only communicating through a closely-coupled memory window instead of over a network cable.
- Sorgelig
- Site Admin
- Posts: 890
- Joined: Thu May 21, 2020 9:49 pm
- Has thanked: 2 times
- Been thanked: 214 times
Re: Looking for Amiga driver developer
None of those. Just need to adapt the driver from link i've posted. If it would be windows or linux driver then i would do it myself.
-
- Posts: 24
- Joined: Wed Jun 17, 2020 6:04 am
Re: Looking for Amiga driver developer
It looks like it builds for me. Let me know what you need adjusted.
c:\dev\a314\Software\a314fs>build.bat
c:\dev\a314\Software\a314fs>vc a314fs.c -S -c99 -IC:\vbcc-2020.06.16.bin\targets\m68k-amigaos\include -IC:\Amiga\NDK_3.9\Include\include_h -LC:\vbcc-2020.06.16.bin\targets\m68k-amigaos\lib -LC:\Amiga\NDK_3.9\Include\linker_libs -o a314fs.asm
c:\dev\a314\Software\a314fs>python comment_out_sections.py
c:\dev\a314\Software\a314fs>vc bcpl_start.asm a314fs.asm bcpl_end.asm -IC:\vbcc-2020.06.16.bin\targets\m68k-amigaos\include -IC:\Amiga\NDK_3.9\Include\include_h -LC:\vbcc-2020.06.16.bin\targets\m68k-amigaos\lib -LC:\Amiga\NDK_3.9\Include\linker_libs -nostdlib -o a314fs
c:\dev\a314\Software\a314fs>python patch_a314fs.py
c:\dev\a314\Software\a314fs>del a314fs.asm
c:\dev\a314\Software\a314fs>file a314fs
a314fs: AmigaOS loadseg()ble executable/binary
c:\dev\a314\Software\a314fs>
c:\dev\a314\Software\a314fs>build.bat
c:\dev\a314\Software\a314fs>vc a314fs.c -S -c99 -IC:\vbcc-2020.06.16.bin\targets\m68k-amigaos\include -IC:\Amiga\NDK_3.9\Include\include_h -LC:\vbcc-2020.06.16.bin\targets\m68k-amigaos\lib -LC:\Amiga\NDK_3.9\Include\linker_libs -o a314fs.asm
c:\dev\a314\Software\a314fs>python comment_out_sections.py
c:\dev\a314\Software\a314fs>vc bcpl_start.asm a314fs.asm bcpl_end.asm -IC:\vbcc-2020.06.16.bin\targets\m68k-amigaos\include -IC:\Amiga\NDK_3.9\Include\include_h -LC:\vbcc-2020.06.16.bin\targets\m68k-amigaos\lib -LC:\Amiga\NDK_3.9\Include\linker_libs -nostdlib -o a314fs
c:\dev\a314\Software\a314fs>python patch_a314fs.py
c:\dev\a314\Software\a314fs>del a314fs.asm
c:\dev\a314\Software\a314fs>file a314fs
a314fs: AmigaOS loadseg()ble executable/binary
c:\dev\a314\Software\a314fs>
-
- Posts: 24
- Joined: Wed Jun 17, 2020 6:04 am
Re: Looking for Amiga driver developer
I've adjusted some paths, to point to /media/fat/Amiga/shared as the folder for sharing.
The compiled binaries are in the release:
https://github.com/apolkosnik/a314/releases/tag/rel1
I've compiled that under windows, rather than going the easy route with the docker on linux.
The compiled binaries are in the release:
https://github.com/apolkosnik/a314/releases/tag/rel1
I've compiled that under windows, rather than going the easy route with the docker on linux.
- Sorgelig
- Site Admin
- Posts: 890
- Joined: Thu May 21, 2020 9:49 pm
- Has thanked: 2 times
- Been thanked: 214 times
Re: Looking for Amiga driver developer
Sorry, haven't been here some time and didn't see your replies as i was busy by studying the subject (since no one wanted to help me). Shares now are working. Just need to polish it.apolkosnik wrote: ↑Wed Jun 24, 2020 3:51 am I've adjusted some paths, to point to /media/fat/Amiga/shared as the folder for sharing.
-
- Posts: 24
- Joined: Wed Jun 17, 2020 6:04 am
- Sorgelig
- Site Admin
- Posts: 890
- Joined: Thu May 21, 2020 9:49 pm
- Has thanked: 2 times
- Been thanked: 214 times
Re: Looking for Amiga driver developer
I don't understand how Workbench get notification that folder is changed. Currently you don't see the changes in folder after operations, so you have to choose update in menu to see the changes.
Any ideas?
Any ideas?
-
- Top Contributor
- Posts: 1323
- Joined: Thu Jun 11, 2020 2:31 am
- Has thanked: 15 times
- Been thanked: 213 times
Re: Looking for Amiga driver developer
I'm not sure it does. If you have a Workbench folder window open, then use the CLI to copy a <folder>.info into it, it doesn't just show up.
-
- Posts: 24
- Joined: Wed Jun 17, 2020 6:04 am
Re: Looking for Amiga driver developer
AFAIK, Workbench doesn't do the automatic refresh. I think it only works for new volumes that will show up on the main Workbench window, such as when you insert a new floppy into the disk drive. Other Workbench replacements might be capable of doing updating on changes content.
- Sorgelig
- Site Admin
- Posts: 890
- Joined: Thu May 21, 2020 9:49 pm
- Has thanked: 2 times
- Been thanked: 214 times
Re: Looking for Amiga driver developer
When you delete the file or folder (icon->delete) then it disappear from window. And when you drag the icon to copy it, it will appear normally in new place.
But in case of my implementation the content of opened window doesn't change till i choose window->update
I see WB sends ACTION_INFO about once per 1-2 seconds, so i was thinking it can get some change notifications which will force update the window. But so far, i couldn't detect which field can be used for that. May be i'm looking in wrong place.
But in case of my implementation the content of opened window doesn't change till i choose window->update
I see WB sends ACTION_INFO about once per 1-2 seconds, so i was thinking it can get some change notifications which will force update the window. But so far, i couldn't detect which field can be used for that. May be i'm looking in wrong place.
- Sorgelig
- Site Admin
- Posts: 890
- Joined: Thu May 21, 2020 9:49 pm
- Has thanked: 2 times
- Been thanked: 214 times
Re: Looking for Amiga driver developer
Another, more serious problem:
If i try to remove the folder and it's not empty, then workbench remove EVERYTHING from shared folder. This is weirdest behaviour i ever seen. WB examines every directory entry, delete everything, then gets parent directory and deletes everything there and till it hit the root of shared folder!
I couldn't identify the reason of such behaviour. The only workaround i could make is to delete the selected folder internally and return "success" result.
If i try to remove the folder and it's not empty, then workbench remove EVERYTHING from shared folder. This is weirdest behaviour i ever seen. WB examines every directory entry, delete everything, then gets parent directory and deletes everything there and till it hit the root of shared folder!
I couldn't identify the reason of such behaviour. The only workaround i could make is to delete the selected folder internally and return "success" result.
Re: Looking for Amiga driver developer
I can guess - is there a ".." in the folder, that points to parent folder on the linux directory, and that from Amiga side looks like a subfolder named ".."?Sorgelig wrote: ↑Sat Jun 27, 2020 4:03 pm Another, more serious problem:
If i try to remove the folder and it's not empty, then workbench remove EVERYTHING from shared folder. This is weirdest behaviour i ever seen. WB examines every directory entry, delete everything, then gets parent directory and deletes everything there and till it hit the root of shared folder!
I couldn't identify the reason of such behaviour. The only workaround i could make is to delete the selected folder internally and return "success" result.
- Sorgelig
- Site Admin
- Posts: 890
- Joined: Thu May 21, 2020 9:49 pm
- Has thanked: 2 times
- Been thanked: 214 times
Re: Looking for Amiga driver developer
"." and ".." aren't transferred to Amiga. Amiga uses ACTION_PARENT message explicitly wanting to find the parent of current folder, so it's not like simple opening of ".."
- Sorgelig
- Site Admin
- Posts: 890
- Joined: Thu May 21, 2020 9:49 pm
- Has thanked: 2 times
- Been thanked: 214 times
Re: Looking for Amiga driver developer
Very interesting info. Although it doesn't explain why it's not updated automatically.
But i will try to find what's the difference from native folders.
Re: Looking for Amiga driver developer
So this is only an issue with Workbench, and not CLI and DOpus etc? The one to ask is Olaf “olsen” Barthel, he’s the one currently maintaining workbench.library, and he’s usually very helpful.
- Sorgelig
- Site Admin
- Posts: 890
- Joined: Thu May 21, 2020 9:49 pm
- Has thanked: 2 times
- Been thanked: 214 times
Re: Looking for Amiga driver developer
It's only WB window content update issue. DOpus correctly updates after copy/delete.
-
- Posts: 24
- Joined: Wed Jun 17, 2020 6:04 am
- Sorgelig
- Site Admin
- Posts: 890
- Joined: Thu May 21, 2020 9:49 pm
- Has thanked: 2 times
- Been thanked: 214 times
Re: Looking for Amiga driver developer
Well, i identified a half of deletion problem. I didn't check the locks before delete. Now it doesn't delete locked objects. In WB 3.9 deletion works ok (honestly i didn't test before on 3.9), while 3.1 doing weird thing: If dir is not empty then it copy the lock and then deletes the content, then when it comes to deletion of dir itself it fails since lock haven't been freed. After fault, it frees the lock. So at the end, the content of dir is deleted (if there are internal dirs then they correctly deleted) while dir itself isn't. Then second attempt to delete this dir finally deletes it.
- Sorgelig
- Site Admin
- Posts: 890
- Joined: Thu May 21, 2020 9:49 pm
- Has thanked: 2 times
- Been thanked: 214 times
Re: Looking for Amiga driver developer
Just tested 3.1.4.
Good news: it automatically updates window when file is copied/deleted.
Bad news: all files paired with .info are totally invisible on shared disk. Even if you select "show all", they are still invisible in WB. Only if i rename .info to something different then both original file and its .info addon becomes visible. In DirOpus - no problems.
Good news: it automatically updates window when file is copied/deleted.
Bad news: all files paired with .info are totally invisible on shared disk. Even if you select "show all", they are still invisible in WB. Only if i rename .info to something different then both original file and its .info addon becomes visible. In DirOpus - no problems.