Ich hoffe du hast damit Erfolg damit, aber wenn ich den Code nur mal kurz überfliege sieht mir das doch stark nach Halluzinationen aus. Zumindest "Androidapi.Log.d" wäre mir neu. Das ist normal in den FMX.Types drin und wird einfach nur mit log.d angesprochen.
Aber vielleicht ist ja ein Ansatz drin, der dich weiter bringt

ja fcntl ist im prinzip das ding was ich bräuchte oder?
und das zumindest existiert in Studio\23.0\source\
rtl\posix\Posix.Fcntl.pas
Delphi-Quellcode:
{*******************************************************}
{ }
{ CodeGear Delphi Runtime Library }
{ }
{ Copyright(c) 1995-2023 Embarcadero Technologies, Inc. }
{ All rights reserved }
{ }
{ Copyright and license exceptions noted in source }
{ }
{*******************************************************}
unit Posix.Fcntl;
{$WEAKPACKAGEUNIT}
{$HPPEMIT NOUSINGNAMESPACE}
interface
uses Posix.Base, Posix.SysTypes;
(*$HPPEMIT '#include <fcntl.h>' *)
{$DEFINE IN_POSIXFCNTL}
{$IFDEF MACOS}
{$I osx/FcntlTypes.inc}
{$ELSEIF defined(LINUX)}
{$I linux/FcntlTypes.inc}
{$ELSEIF defined(ANDROID)}
{$I android/FcntlTypes.inc}
{$ENDIF}
{$I FcntlAPI.inc}
implementation
end.
und in FcntlAPI.inc
Delphi-Quellcode:
{*******************************************************}
{ }
{ CodeGear Delphi Runtime Library }
{ }
{ Copyright(c) 1995-2023 Embarcadero Technologies, Inc. }
{ All rights reserved }
{ }
{*******************************************************}
{$IFNDEF MACOS}
function openat(
Handle: Integer; Path: MarshaledAString; Flags: Integer): Integer;
cdecl;
varargs;
external libc
name _PU + '
openat';
{$EXTERNALSYM openat}
{$ENDIF}
function __open(PathName: MarshaledAString; Flags: Integer): Integer;
cdecl;
varargs;
external libc
name _PU + '
open';
{$EXTERNALSYM __open}
function open(PathName: MarshaledAString; Flags: Integer): Integer;
cdecl;
varargs;
external libc
name _PU + '
open';
{$EXTERNALSYM open}
{ Do the file control operation described by CMD on FD.
The remaining arguments are interpreted depending on CMD. }
function fcntl(
Handle: Integer; Command: Integer): Integer;
cdecl;
varargs;
external libc
name _PU + '
fcntl';
{$EXTERNALSYM fcntl}
function creat(Path: MarshaledAString; Mode: mode_t): Integer;
cdecl
external libc
name _PU + '
creat';
{$EXTERNALSYM creat}
Von hier aus kann ich wahrscheinlich mit denen die mehr Ahnung von C und "Baudraten" haben zu einer Lösung kommen.
Also zumindest der Kern "öffnen einer Datei mit Baudrate" scheint verfügbar zu sein.