1 /*****************************************************************************/ 2 /* */ 3 /* utsname.h */ 4 /* */ 5 /* Return system information */ 6 /* */ 7 /* */ 8 /* */ 9 /* (C) 2003 Ullrich von Bassewitz */ 10 /* Roemerstrasse 52 */ 11 /* D-70794 Filderstadt */ 12 /* EMail: uz@cc65.org */ 13 /* */ 14 /* */ 15 /* This software is provided 'as-is', without any expressed or implied */ 16 /* warranty. In no event will the authors be held liable for any damages */ 17 /* arising from the use of this software. */ 18 /* */ 19 /* Permission is granted to anyone to use this software for any purpose, */ 20 /* including commercial applications, and to alter it and redistribute it */ 21 /* freely, subject to the following restrictions: */ 22 /* */ 23 /* 1. The origin of this software must not be misrepresented; you must not */ 24 /* claim that you wrote the original software. If you use this software */ 25 /* in a product, an acknowledgment in the product documentation would be */ 26 /* appreciated but is not required. */ 27 /* 2. Altered source versions must be plainly marked as such, and must not */ 28 /* be misrepresented as being the original software. */ 29 /* 3. This notice may not be removed or altered from any source */ 30 /* distribution. */ 31 /* */ 32 /*****************************************************************************/ 33 34 35 36 #ifndef _UTSNAME_H 37 #define _UTSNAME_H 38 39 40 41 /*****************************************************************************/ 42 /* Data */ 43 /*****************************************************************************/ 44 45 46 47 /* 48 ** Suggested field contents: 49 ** 50 ** sysname 51 ** Should contain the name of the underlying operating system, or "cc65" 52 ** if the program runs on the bare machine. 53 ** 54 ** nodename 55 ** Is empty or may be defined by the implementor. 56 ** 57 ** release 58 ** Contains the operating system release or the major/minor cc65 version 59 ** if sysname contains "cc65". 60 ** 61 ** version 62 ** Contains the operating system version or the cc65 patch version if 63 ** sysname contains "cc65". 64 ** 65 ** machine 66 ** Contains the complete name of the machine, like "Commodore 64", 67 ** "Oric Atmos" or similar. 68 ** 69 ** Beware: The library sources written in assembler have knowledge about this 70 ** struct! 71 */ 72 struct utsname { 73 char sysname[17]; 74 char nodename[9]; 75 char release[9]; 76 char version[9]; 77 char machine[25]; 78 }; 79 80 81 82 /*****************************************************************************/ 83 /* Code */ 84 /*****************************************************************************/ 85 86 87 88 int __fastcall__ uname (struct utsname* buf); 89 /* Return system information */ 90 91 92 93 /* End of utsname.h */ 94 #endif 95 96 97 98