fix sysuname for all targets, somehow this was forgotten

This commit is contained in:
mrdudz
2025-06-26 01:21:28 +02:00
parent 801508aecf
commit 0290b276ae
20 changed files with 106 additions and 77 deletions

37
libsrc/agat/sysuname.s Normal file
View File

@@ -0,0 +1,37 @@
;
; Ullrich von Bassewitz, 2003-08-12
;
; unsigned char __fastcall__ _sysuname (struct utsname* buf);
;
.export __sysuname, utsdata
.import utscopy
__sysuname = utscopy
;--------------------------------------------------------------------------
; Data. We define a fixed utsname struct here and just copy it.
.rodata
utsdata:
; sysname
.asciiz "cc65"
; nodename
.asciiz ""
; release
.byte .string (>.version)
.byte '.'
.byte .string (<.version)
.byte $00
; version
.byte '0' ; unused
.byte $00
; machine
.asciiz "Agat"

View File

@@ -23,13 +23,13 @@ utsdata:
.asciiz ""
; release
.byte ((.VERSION >> 8) & $0F) + '0'
.byte .string (>.version)
.byte '.'
.byte ((.VERSION >> 4) & $0F) + '0'
.byte .string (<.version)
.byte $00
; version
.byte (.VERSION & $0F) + '0'
.byte '0' ; unused
.byte $00
; machine

View File

@@ -23,13 +23,13 @@ utsdata:
.asciiz ""
; release
.byte ((.VERSION >> 8) & $0F) + '0'
.byte .string (>.version)
.byte '.'
.byte ((.VERSION >> 4) & $0F) + '0'
.byte .string (<.version)
.byte $00
; version
.byte (.VERSION & $0F) + '0'
.byte '0' ; unused
.byte $00
; machine

View File

@@ -23,13 +23,13 @@ utsdata:
.asciiz ""
; release
.byte ((.VERSION >> 8) & $0F) + '0'
.byte .string (>.version)
.byte '.'
.byte ((.VERSION >> 4) & $0F) + '0'
.byte .string (<.version)
.byte $00
; version
.byte (.VERSION & $0F) + '0'
.byte '0' ; unused
.byte $00
; machine

View File

@@ -23,23 +23,13 @@ utsdata:
.asciiz ""
; release
.byte ((.VERSION >> 8) & $0F) + '0'
.byte .string (>.version)
.byte '.'
.if ((.VERSION >> 4) & $0F) > 9
.byte ((.VERSION >> 4) & $0F) / 10 + '0'
.byte ((.VERSION >> 4) & $0F) .MOD 10 + '0'
.else
.byte ((.VERSION >> 4) & $0F) + '0'
.endif
.byte .string (<.version)
.byte $00
; version
.if (.VERSION & $0F) > 9
.byte (.VERSION & $0F) / 10 + '0'
.byte (.VERSION & $0F) .MOD 10 + '0'
.else
.byte (.VERSION & $0F) + '0'
.endif
.byte '0' ; unused
.byte $00
; machine

View File

@@ -23,13 +23,13 @@ utsdata:
.asciiz ""
; release
.byte ((.VERSION >> 8) & $0F) + '0'
.byte .string (>.version)
.byte '.'
.byte ((.VERSION >> 4) & $0F) + '0'
.byte .string (<.version)
.byte $00
; version
.byte (.VERSION & $0F) + '0'
.byte '0' ; unused
.byte $00
; machine

View File

@@ -23,13 +23,13 @@ utsdata:
.asciiz ""
; release
.byte ((.VERSION >> 8) & $0F) + '0'
.byte .string (>.version)
.byte '.'
.byte ((.VERSION >> 4) & $0F) + '0'
.byte .string (<.version)
.byte $00
; version
.byte (.VERSION & $0F) + '0'
.byte '0' ; unused
.byte $00
; machine

View File

@@ -23,13 +23,13 @@ utsdata:
.asciiz ""
; release
.byte ((.VERSION >> 8) & $0F) + '0'
.byte .string (>.version)
.byte '.'
.byte ((.VERSION >> 4) & $0F) + '0'
.byte .string (<.version)
.byte $00
; version
.byte (.VERSION & $0F) + '0'
.byte '0' ; unused
.byte $00
; machine

View File

@@ -23,13 +23,13 @@ utsdata:
.asciiz ""
; release
.byte ((.VERSION >> 8) & $0F) + '0'
.byte .string (>.version)
.byte '.'
.byte ((.VERSION >> 4) & $0F) + '0'
.byte .string (<.version)
.byte $00
; version
.byte (.VERSION & $0F) + '0'
.byte '0' ; unused
.byte $00
; machine

View File

@@ -23,13 +23,13 @@ utsdata:
.asciiz ""
; release
.byte ((.VERSION >> 8) & $0F) + '0'
.byte .string (>.version)
.byte '.'
.byte ((.VERSION >> 4) & $0F) + '0'
.byte .string (<.version)
.byte $00
; version
.byte (.VERSION & $0F) + '0'
.byte '0' ; unused
.byte $00
; machine

View File

@@ -23,13 +23,13 @@ utsdata:
.asciiz ""
; release
.byte ((.VERSION >> 8) & $0F) + '0'
.byte .string (>.version)
.byte '.'
.byte ((.VERSION >> 4) & $0F) + '0'
.byte .string (<.version)
.byte $00
; version
.byte (.VERSION & $0F) + '0'
.byte '0' ; unused
.byte $00
; machine

View File

@@ -24,13 +24,13 @@ utsdata:
.asciiz ""
; release
.byte ((.VERSION >> 8) & $0F) + '0'
.byte .string (>.version)
.byte '.'
.byte ((.VERSION >> 4) & $0F) + '0'
.byte .string (<.version)
.byte $00
; version
.byte (.VERSION & $0F) + '0'
.byte '0' ; unused
.byte $00
; machine

View File

@@ -22,13 +22,13 @@ utsdata:
.asciiz ""
; release
.byte ((.VERSION >> 8) & $0F) + '0'
.byte .string (>.version)
.byte '.'
.byte ((.VERSION >> 4) & $0F) + '0'
.byte .string (<.version)
.byte $00
; version
.byte (.VERSION & $0F) + '0'
.byte '0' ; unused
.byte $00
; machine

View File

@@ -23,13 +23,13 @@ utsdata:
.asciiz ""
; release
.byte ((.VERSION >> 8) & $0F) + '0'
.byte .string (>.version)
.byte '.'
.byte ((.VERSION >> 4) & $0F) + '0'
.byte .string (<.version)
.byte $00
; version
.byte (.VERSION & $0F) + '0'
.byte '0' ; unused
.byte $00
; machine

View File

@@ -23,13 +23,13 @@ utsdata:
.asciiz ""
; release
.byte ((.VERSION >> 8) & $0F) + '0'
.byte .string (>.version)
.byte '.'
.byte ((.VERSION >> 4) & $0F) + '0'
.byte .string (<.version)
.byte $00
; version
.byte (.VERSION & $0F) + '0'
.byte '0' ; unused
.byte $00
; machine

View File

@@ -23,13 +23,13 @@ utsdata:
.asciiz ""
; release
.byte ((.VERSION >> 8) & $0F) + '0'
.byte .string (>.version)
.byte '.'
.byte ((.VERSION >> 4) & $0F) + '0'
.byte .string (<.version)
.byte $00
; version
.byte (.VERSION & $0F) + '0'
.byte '0' ; unused
.byte $00
; machine

View File

@@ -23,13 +23,13 @@ utsdata:
.asciiz ""
; release
.byte ((.VERSION >> 8) & $0F) + '0'
.byte .string (>.version)
.byte '.'
.byte ((.VERSION >> 4) & $0F) + '0'
.byte .string (<.version)
.byte $00
; version
.byte (.VERSION & $0F) + '0'
.byte '0' ; unused
.byte $00
; machine

View File

@@ -23,23 +23,13 @@ utsdata:
.asciiz ""
; release
.byte ((.VERSION >> 8) & $0F) + '0'
.byte .string (>.version)
.byte '.'
.if ((.VERSION >> 4) & $0F) > 9
.byte ((.VERSION >> 4) & $0F) / 10 + '0'
.byte ((.VERSION >> 4) & $0F) .MOD 10 + '0'
.else
.byte ((.VERSION >> 4) & $0F) + '0'
.endif
.byte .string (<.version)
.byte $00
; version
.if (.VERSION & $0F) > 9
.byte (.VERSION & $0F) / 10 + '0'
.byte (.VERSION & $0F) .MOD 10 + '0'
.else
.byte (.VERSION & $0F) + '0'
.endif
.byte '0' ; unused
.byte $00
; machine

View File

@@ -23,13 +23,13 @@ utsdata:
.asciiz ""
; release
.byte ((.VERSION >> 8) & $0F) + '0'
.byte .string (>.version)
.byte '.'
.byte ((.VERSION >> 4) & $0F) + '0'
.byte .string (<.version)
.byte $00
; version
.byte (.VERSION & $0F) + '0'
.byte '0' ; unused
.byte $00
; machine

View File

@@ -9,6 +9,7 @@
#include <stdio.h>
#include <stdlib.h>
#include <sys/utsname.h>
#if ((__CC65__ >> 8) > 3) || ((__CC65__ & 0x000f) > 0)
/* compiler version is 2.19-git or higher */
@@ -29,6 +30,17 @@
int main(void)
{
#if !defined(__SIM6502__) && !defined(__SIM65C02__) && !defined(__AGAT__)
struct utsname buf;
uname (&buf);
printf("utsname.sysname: %s\n", buf.sysname);
printf("utsname.nodename: %s\n", buf.nodename);
printf("utsname.release: %s\n", buf.release);
printf("utsname.version: %s\n", buf.version);
printf("utsname.machine: %s\n", buf.machine);
#endif
printf("__CC65__ defined as %04x\n", __CC65__);
printf("compiler version is %u.%u\n", VER_MAJOR, VER_MINOR);
if (__CC65__ == VERSION) {