-
Notifications
You must be signed in to change notification settings - Fork 5
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- misc: final 11.30 release preparations
- mcc/HandleInput.c: updated MySPrintf() function to use a inline macros for AROS and MORPHOS builds instead. - include: updated SDI headers.
- Loading branch information
Showing
57 changed files
with
328 additions
and
184 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -2,8 +2,14 @@ | |
MUI BetterString MCC class - ChangeLog | ||
-------------------------------------- | ||
|
||
$Id$ | ||
$URL$ | ||
#### v11.30 RELEASE ########################################################### | ||
|
||
2016-08-06 Jens Maus <[email protected]> | ||
|
||
* misc: final 11.30 release preparations | ||
* mcc/HandleInput.c: updated MySPrintf() function to use a inline macros for | ||
AROS and MORPHOS builds instead. | ||
* include: updated SDI headers. | ||
|
||
#### v11.29 RELEASE ########################################################### | ||
|
||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Binary file not shown.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,9 +1,9 @@ | ||
Short: BetterString custom class for MUI, V11.29 | ||
Short: BetterString custom class for MUI | ||
Author: BetterString.mcc Open Source Team | ||
Uploader: Jens Maus <[email protected]> | ||
Type: dev/mui | ||
Version: 11.29 | ||
Replaces: dev/mui/mcc_betterstring-11.28.lha | ||
Version: 11.30 | ||
Replaces: dev/mui/mcc_betterstring-11.29.lha | ||
Requires: AmigaOS 3.0+ or MorphOS, MUI 3.8+, 68020+/PPC604e+ | ||
Architecture: ppc-amigaos >= 4.0.0; m68k-amigaos >= 3.0; ppc-morphos >= 1.4.2; i386-aros; ppc-aros; x86_64-aros | ||
|
||
|
@@ -27,7 +27,7 @@ maintained and Copyright (c) by the BetterString.mcc Open Source Team. | |
It was released under the GNU Lesser Public License in July 2005 and its | ||
development is hosted at: | ||
|
||
http://www.sourceforge.net/projects/bstring-mcc/ | ||
https://github.com/amiga-mui/betterstring | ||
|
||
Please consult the included "COPYING" file for a more detailed information | ||
on the licensing of the gadget and its source code. | ||
|
@@ -36,8 +36,8 @@ Please refer to the included ChangeLog in the archive for a detailed information | |
on the changes since the last version release. | ||
|
||
Enjoy this release and if you find any bugs or have suggestions please always | ||
prefer to go to the project homepage http://www.sf.net/projects/bstring-mcc/ and | ||
use the Bug/Feature Trackers there to report anything to the authors! | ||
prefer to go to the project homepage https://github.com/amiga-mui/betterstring | ||
and use the Bug/Feature Trackers there to report anything to the authors! | ||
|
||
Have phun, | ||
|
||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -4,10 +4,10 @@ | |
/* Includeheader | ||
Name: SDI_compiler.h | ||
Versionstring: $VER: SDI_compiler.h 1.35 (03.03.2011) | ||
Author: Dirk Stoecker & Jens Langner | ||
Versionstring: $VER: SDI_compiler.h 1.38 (27.03.2016) | ||
Authors: Dirk Stoecker, Jens Maus | ||
Distribution: PD | ||
Project page: http://www.sf.net/projects/sditools/ | ||
Project page: https://github.com/adtools/SDI | ||
Description: defines to hide compiler stuff | ||
1.1 25.06.98 : created from data made by Gunter Nikl | ||
|
@@ -59,6 +59,11 @@ | |
1.34 26.07.10 : adapted IPTR and SIPTR definitions as the latest MorphOS SDK already | ||
contains them. (tboeckel) | ||
1.35 03.03.11 : fixed AROS macros for m68k (Jason McMullan) | ||
1.36 30.03.15 : changed FAR define to only define it empty in case __far does not | ||
exist (Gunther Nikl) | ||
1.37 18.02.16 : changed INLINE define to not include "static" but use a separate STATIC | ||
define (Jens Maus) | ||
1.38 27.03.16 : when using GCC4/5 for MorphOS compiles VARARGS68K is not supported (Jens Maus) | ||
*/ | ||
|
||
|
@@ -72,9 +77,9 @@ | |
** (e.g. add your name or nick name). | ||
** | ||
** Find the latest version of this file at: | ||
** http://cvs.sourceforge.net/viewcvs.py/sditools/sditools/headers/ | ||
** https://github.com/adtools/SDI | ||
** | ||
** Jens Langner <Jens.Langner@light-speed.de> and | ||
** Jens Maus <mail@jens-maus.de> | ||
** Dirk Stoecker <[email protected]> | ||
*/ | ||
|
||
|
@@ -86,6 +91,7 @@ | |
#undef CONST | ||
#undef SAVEDS | ||
#undef INLINE | ||
#undef STATIC | ||
#undef REGARGS | ||
#undef STDARGS | ||
#undef OFFSET | ||
|
@@ -111,7 +117,7 @@ | |
#define STDARGS | ||
#define STACKEXT | ||
#define REGARGS | ||
#define INLINE static | ||
#define INLINE | ||
#define OFFSET(p,m) __offsetof(struct p,m) | ||
|
||
#if defined(__PPC__) | ||
|
@@ -125,7 +131,7 @@ | |
#define STDARGS | ||
#define STACKEXT | ||
#define REGARGS | ||
#define INLINE inline | ||
#define INLINE | ||
/*************************************************************************/ | ||
#elif defined(__SASC) | ||
#define ASM __asm | ||
|
@@ -136,7 +142,7 @@ | |
#define DEPRECATED __attribute__((deprecated)) | ||
#if __GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ > 0) | ||
#define USED_VAR USED /* for variables only! */ | ||
#define INLINE static __inline __attribute__((always_inline)) | ||
#define INLINE __inline __attribute__((always_inline)) | ||
#endif | ||
/* we have to distinguish between AmigaOS4 and MorphOS */ | ||
#if (defined(_M68000) || defined(__M68000) || defined(__mc68000)) && !defined(__AROS__) | ||
|
@@ -148,7 +154,7 @@ | |
#define STDARGS | ||
#define REGARGS | ||
#define STACKEXT | ||
#if defined(__MORPHOS__) | ||
#if defined(__MORPHOS__) && __GNUC__ == 2 | ||
#define VARARGS68K __attribute__((varargs68k)) | ||
#endif | ||
#if defined(__AROS__) | ||
|
@@ -157,13 +163,15 @@ | |
#define INTERRUPT | ||
#define CHIP | ||
#endif | ||
#define FAR | ||
#if !defined(__far) | ||
#define FAR /* __far NOT supported! */ | ||
#endif | ||
#define NEAR | ||
#elif defined(_DCC) | ||
#define REG(reg,arg) __##reg arg | ||
#define STACKEXT __stkcheck | ||
#define STDARGS __stkargs | ||
#define INLINE static | ||
#define INLINE | ||
#endif | ||
|
||
/* then "common" ones */ | ||
|
@@ -184,7 +192,10 @@ | |
#define SAVEDS __saveds | ||
#endif | ||
#if !defined(INLINE) | ||
#define INLINE static __inline | ||
#define INLINE __inline | ||
#endif | ||
#if !defined(STATIC) | ||
#define STATIC static | ||
#endif | ||
#if !defined(REGARGS) | ||
#define REGARGS __regargs | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -4,10 +4,10 @@ | |
/* Includeheader | ||
Name: SDI_hook.h | ||
Versionstring: $VER: SDI_hook.h 1.24 (03.03.2011) | ||
Author: SDI & Jens Langner | ||
Versionstring: $VER: SDI_hook.h 1.27 (04.04.2015) | ||
Authors: Dirk Stoecker, Jens Maus | ||
Distribution: PD | ||
Project page: http://www.sf.net/projects/sditools/ | ||
Project page: https://github.com/adtools/SDI | ||
Description: defines to hide compiler specific hook stuff | ||
1.0 21.06.02 : based on the work made for freeciv and YAM with | ||
|
@@ -52,6 +52,13 @@ | |
1.22 24.06.10 : fixed AROS macros (Matthias Rustler). | ||
1.23 12.08.10 : added missing proto/alib.h include for AROS | ||
1.24 03.03.11 : fixed AROS macros for m68k (Jason McMullan) | ||
1.25 18.07.12 : added crosscall macros for functions with 1 and 2 parameters. | ||
These macros are to be used in case i.e. PPC code is to be called | ||
from m68k code. The function pointer must be passed with ENTRY(). | ||
1.26 17.10.12 : added crosscall macros for functions with 1 and 2 parameters but | ||
no return value. | ||
1.27 04.04.15 : fixed HOOKPROTO for vbcc (Fredrik Wikstrom) | ||
1.28 12.07.16 : fixed HOOKPROTO for vbcc (O. Sezer) | ||
*/ | ||
|
||
|
@@ -65,9 +72,9 @@ | |
** (e.g. add your name or nick name). | ||
** | ||
** Find the latest version of this file at: | ||
** http://cvs.sourceforge.net/viewcvs.py/sditools/sditools/headers/ | ||
** https://github.com/adtools/SDI | ||
** | ||
** Jens Langner <Jens.Langner@light-speed.de> and | ||
** Jens Maus <mail@jens-maus.de> | ||
** Dirk Stoecker <[email protected]> | ||
*/ | ||
|
||
|
@@ -115,7 +122,7 @@ | |
** The ENTRY macro, which also gets the function name as argument. | ||
*/ | ||
|
||
#if !defined(__AROS__) && (defined(_M68000) || defined(__M68000) || defined(__mc68000)) | ||
#if !defined(__AROS__) && (defined(_M68000) || defined(__M68000) || defined(__mc68000) || defined(__M68K__)) | ||
#define HOOKPROTO(name, ret, obj, param) static SAVEDS ASM ret \ | ||
name(REG(a0, struct Hook *hook), REG(a2, obj), REG(a1, param)) | ||
#define HOOKPROTONO(name, ret, param) static SAVEDS ASM ret \ | ||
|
@@ -147,7 +154,7 @@ | |
#define HOOKPROTONHNO(name, ret, param) static SAVEDS ret \ | ||
name(UNUSED struct Hook *_hook, UNUSED APTR _obj, param) | ||
#define HOOKPROTONHNP(name, ret, obj) static SAVEDS ret \ | ||
name(UNUSED struct Hook *_hook, obj, UNUSED APTR _param) | ||
name(UNUSED struct Hook *_hook, obj, UNUSED APTR _param) | ||
#define HOOKPROTONHNONP(name, ret) static SAVEDS ret name(void) | ||
#endif | ||
|
||
|
@@ -192,6 +199,52 @@ | |
static const struct SDI_EmulLibEntry Gate_##name = {SDI_TRAP_LIB, 0, \ | ||
(APTR) Trampoline_##name}; \ | ||
static ULONG name(struct IClass * cl, Object * obj, Msg msg) | ||
#define CROSSCALL1(name, ret, type1, param1) \ | ||
static STDARGS SAVEDS ret name(type1 param1); \ | ||
static ret Trampoline_##name(void) \ | ||
{ \ | ||
ULONG *stk = (ULONG *)REG_A7; \ | ||
type1 param1 = (type1)stk[1]; \ | ||
return name(param1); \ | ||
} \ | ||
static const struct SDI_EmulLibEntry Gate_##name = {SDI_TRAP_LIB, 0, \ | ||
(APTR) Trampoline_##name}; \ | ||
static STDARGS SAVEDS ret name(type1 param1, type2 param2) | ||
#define CROSSCALL1NR(name, type1, param1) \ | ||
static STDARGS SAVEDS void name(type1 param1); \ | ||
static void Trampoline_##name(void) \ | ||
{ \ | ||
ULONG *stk = (ULONG *)REG_A7; \ | ||
type1 param1 = (type1)stk[1]; \ | ||
name(param1); \ | ||
} \ | ||
static const struct SDI_EmulLibEntry Gate_##name = {SDI_TRAP_LIB, 0, \ | ||
(APTR) Trampoline_##name}; \ | ||
static STDARGS SAVEDS void name(type1 param1) | ||
#define CROSSCALL2(name, ret, type1, param1, type2, param2) \ | ||
static STDARGS SAVEDS ret name(type1 param1, type2 param2); \ | ||
static ret Trampoline_##name(void) \ | ||
{ \ | ||
ULONG *stk = (ULONG *)REG_A7; \ | ||
type1 param1 = (type1)stk[1]; \ | ||
type2 param2 = (type2)stk[2]; \ | ||
return name(param1, param2); \ | ||
} \ | ||
static const struct SDI_EmulLibEntry Gate_##name = {SDI_TRAP_LIB, 0, \ | ||
(APTR) Trampoline_##name}; \ | ||
static STDARGS SAVEDS ret name(type1 param1, type2 param2) | ||
#define CROSSCALL2NR(name, type1, param1, type2, param2) \ | ||
static STDARGS SAVEDS void name(type1 param1, type2 param2); \ | ||
static void Trampoline_##name(void) \ | ||
{ \ | ||
ULONG *stk = (ULONG *)REG_A7; \ | ||
type1 param1 = (type1)stk[1]; \ | ||
type2 param2 = (type2)stk[2]; \ | ||
name(param1, param2); \ | ||
} \ | ||
static const struct SDI_EmulLibEntry Gate_##name = {SDI_TRAP_LIB, 0, \ | ||
(APTR) Trampoline_##name}; \ | ||
static STDARGS SAVEDS void name(type1 param1, type2 param2) | ||
#define ENTRY(func) (APTR)&Gate_##func | ||
|
||
#elif defined(__AROS__) | ||
|
@@ -206,22 +259,30 @@ | |
#define DISPATCHERPROTO(name) \ | ||
IPTR name(struct IClass * cl, Object * obj, Msg msg); \ | ||
AROS_UFP3(IPTR, Gate_##name, \ | ||
AROS_UFPA(struct IClass *, cl, A0), \ | ||
AROS_UFPA(Object *, obj, A2), \ | ||
AROS_UFPA(Msg, msg, A1)) | ||
AROS_UFPA(struct IClass *, cl, A0), \ | ||
AROS_UFPA(Object *, obj, A2), \ | ||
AROS_UFPA(Msg, msg, A1)) | ||
#define DISPATCHERx(x,name) \ | ||
x IPTR name(struct IClass * cl, Object * obj, Msg msg); \ | ||
x AROS_UFH3(IPTR, Gate_##name, \ | ||
AROS_UFHA(struct IClass *, cl, A0), \ | ||
AROS_UFHA(Object *, obj, A2), \ | ||
AROS_UFHA(Msg, msg, A1)) \ | ||
AROS_UFHA(struct IClass *, cl, A0), \ | ||
AROS_UFHA(Object *, obj, A2), \ | ||
AROS_UFHA(Msg, msg, A1)) \ | ||
{ AROS_USERFUNC_INIT \ | ||
return name(cl, obj, msg); \ | ||
return name(cl, obj, msg); \ | ||
AROS_USERFUNC_EXIT \ | ||
} \ | ||
x IPTR name(struct IClass * cl, Object * obj, Msg msg) | ||
#define DISPATCHER(name) DISPATCHERx(,name) | ||
#define SDISPATCHER(name) DISPATCHERx(static,name) | ||
#define CROSSCALL1(name, ret, type1, param1) \ | ||
static STDARGS SAVEDS ret Gate_##name(type1 param1) | ||
#define CROSSCALL1NR(name, type1, param1) \ | ||
static STDARGS SAVEDS void Gate_##name(type1 param1) | ||
#define CROSSCALL2(name, ret, type1, param1, type2, param2) \ | ||
static STDARGS SAVEDS ret Gate_##name(type1 param1, type2 param2) | ||
#define CROSSCALL2NR(name, type1, param1, type2, param2) \ | ||
static STDARGS SAVEDS void Gate_##name(type1 param1, type2 param2) | ||
#define ENTRY(func) (APTR)Gate_##func | ||
|
||
#else /* !__MORPHOS__ && !__AROS__*/ | ||
|
@@ -232,11 +293,19 @@ | |
{{NULL, NULL}, (HOOKFUNC)funcname, NULL, (APTR)data} | ||
#define MakeStaticHook(hookname, funcname) static struct Hook hookname = \ | ||
{{NULL, NULL}, (HOOKFUNC)funcname, NULL, NULL} | ||
#define ENTRY(func) (APTR)func | ||
#define DISPATCHERPROTO(name) SAVEDS ASM IPTR name(REG(a0, \ | ||
struct IClass * cl), REG(a2, Object * obj), REG(a1, Msg msg)) | ||
#define DISPATCHER(name) DISPATCHERPROTO(name) | ||
#define SDISPATCHER(name) static DISPATCHERPROTO(name) | ||
#define CROSSCALL1(name, ret, type1, param1) \ | ||
static STDARGS SAVEDS ret name(type1 param1) | ||
#define CROSSCALL1NR(name, type1, param1) \ | ||
static STDARGS SAVEDS void name(type1 param1) | ||
#define CROSSCALL2(name, ret, type1, param1, type2, param2) \ | ||
static STDARGS SAVEDS ret name(type1 param1, type2 param2) | ||
#define CROSSCALL2NR(name, type1, param1, type2, param2) \ | ||
static STDARGS SAVEDS void name(type1 param1, type2 param2) | ||
#define ENTRY(func) (APTR)func | ||
|
||
#endif | ||
|
||
|
Oops, something went wrong.