I found out that if I try to Execute() shell commands that are internal commands in the Kickstart ROM on AmigaOS 3.2, they fail with an "Unknown command" error. These do work fine with a plain AmigaOS 3.1 (and KS 3.1) installation and other Amiga compatible platforms, so the problem seems to be with newer 68k operating systems. Users reported that this would also happen on 3.1.4 and maybe even on 3.9, but I can't test myself now.
I also tried to make a work-around by creating an external script file, which I would then launch with the Execute() from Hollywood... and that indeed worked with 3.2, but unfortunately it then fails on 3.1... so, it makes two issues which would be nice to know if there's anything that can be done
Here's a test script:
Code: Select all
@DISPLAY {Hidden=True}
Execute("failat") ; "Unknown command / failed returncode 10" on OS3.2, but works on OS3.1
Execute("alias") ; "Unknown command / failed returncode 10" on OS3.2, but works on OS3.1
Execute("cd") ; "Unknown command / failed returncode 10" on OS3.2, but works on OS3.1
Execute("info") ; Works on both
Execute("dir t:") ; Works on both
; A work-around try changes the situation other way around :(
ConsolePrint("doing with a script")
StringToFile("failat\ncd", "T:script")
SetFileAttributes("T:script", {Flags=#FILEATTR_READ_USR | #FILEATTR_WRITE_USR | #FILEATTR_DELETE_USR | #FILEATTR_EXECUTE_USR | #FILEATTR_SCRIPT})
Execute("T:script") ; "EXECUTE: Can't open T:script / object not found / failed returncode 10" on OS3.1, but works on OS3.2
ConsolePrint("end")