![]() |
|
Allegro 4.2.0 RC2 is released |
Matthew Leverton
Supreme Loser
January 1999
![]() |
Allegro 4.2.0 RC2 has been released. SourceForge has the source packages, and binaries are available here. If you build from source, please take note of two things
The files:
[/list] Changes from 4.2.0 RC1 to 4.2.0 RC2 (August 2005)
Changes from 4.2.0 beta 4 to 4.2.0 RC1 (August 2005)
|
Richard Phipps
Member #1,632
November 2001
![]() |
Many thanks to all who contributed to this! |
Michael Faerber
Member #4,800
July 2004
![]() |
Finally a new release! But there will probably be at least a 4.2.0 RC3, because the new demo game isn't integrated in this release. -- |
gnolam
Member #2,030
March 2002
![]() |
There was an RC1? Anyway, does anyone have a direct link to the source distribution? Sourceforge's main page seems to be down. -- |
dthompson
Member #5,749
April 2005
![]() |
I think Beta 4 was RC1. In the Dev-C++ updater, it called Allegro "Allegro 4.2.0 RC1". ______________________________________________________ |
gnolam
Member #2,030
March 2002
![]() |
Quote: I think Beta 4 was RC1. It wasn't. But one wonders why you would release a release candidate without telling anyone... (since the whole point of release candidates is testing) -- |
GullRaDriel
Member #3,861
September 2003
![]() |
downloading & testing (and YES, windows BMP file system is PAIN IN THE DONKEY !) "Code is like shit - it only smells if it is not yours" |
gnolam
Member #2,030
March 2002
![]() |
Compiled and tested it (MinGW, XP) now. The joystick bug is still there. Also, it seems that the button names are in the wrong order (this was the case the last time as well, alth I just didn't think about it then) - though this might conceivably be a driver issue. GullRaDriel said: (and YES, windows BMP file system is PAIN IN THE DONKEY !) BMP is a file system now? -- |
dthompson
Member #5,749
April 2005
![]() |
I didn't think BMPs could have alpha channels. That's PNG's job. ______________________________________________________ |
Fiddler
Member #5,385
January 2005
|
The RC1 was released internally in the AD mailing list after the beta4. This is the first public release candidate. Compiled and tested with MSVC7.1 and Mingw (gcc 3.4.4 candidate) under WinXP. Mostly seems OK. NOTE: I tried changing the parameters for the warn mode in MSVC7.1 (from -W3 -WX to -W4 -Wp64, enabling 64bit portability warnings). The results were, well, enlightening. Almost every file has at least one function the does assignment from a 64bit pointer to a 32bit integer (or worse 16bit). Most of these are inside macros, and so impossible to debug properly. The most annoying ones (and possibly harmless) are in the draw.inl file. For example: include\allegro\inline\draw.inl(535) : warning C4312: 'type cast' : conversion from 'unsigned int' to 'unsigned int *' of greater size AL_INLINE(int, _getpixel32, (BITMAP *bmp, int x, int y), bmp_select(bmp); return c; There are 8 such warnings in draw.inl that will always appear when compiling an app with -Wp64, as allegro.h includes draw.inl. How to combat them? Just detect msvc and supress the warning in this file? That's what I do, but it seems like a hack. ========================================================================= EDIT: In case anyone is interested I redirected the output of the WARNMODE=1 build for MSVC7.1, using the updated parameters, to the attached file. Most warnings come from the draw.inl file, but most others may be cause real problems. Take a look to see what I am talking about. ========================================================================= The Open Toolkit: a game development library for .Net/Mono. |
Peter Wang
Member #23
April 2000
|
The reason RC1 was not publicly announced was... we were too busy with SpeedHack. We'll have to look into the 64-bit portability warnings.
|
Fiddler
Member #5,385
January 2005
|
Ahem... Anyone knows how to post news in the Gamedev site? I think this release should be announced. The more users that update to this, the easier it will be to find bugs before the final 4.2.0 The beta1 release was also announced, and it seems that many upgraded to it (or tried allegro out for the first time). The Open Toolkit: a game development library for .Net/Mono. |
Morten Bendix
Member #1,386
June 2001
![]() |
Ok, so I'm not the only one who missed RC1. There's an "Add a News Item" button on the right, where the news section begins. |
Fiddler
Member #5,385
January 2005
|
Oh! I had adblocked gifs for speed reasons, so it wouldn't display... The Open Toolkit: a game development library for .Net/Mono. |
HoHo
Member #4,534
April 2004
![]() |
I tested the source package and it seemed to work fine under Gentoo. __________ |
GullRaDriel
Member #3,861
September 2003
![]() |
Gnolam : Quote: BMP is a file system now?
No, but RC2 didn't give me a good english dthompson: Quote: I didn't think BMPs could have alpha channels. That's PNG's job.
32 bit is always faiked. 32 bit is 24 color bits + 8 alpha bits. I think the bug they talk is more that some soft aren't filling the alpha channel, or fill it in some strange ways. "Code is like shit - it only smells if it is not yours" |
spellcaster
Member #1,493
September 2001
![]() |
Quote: I didn't think BMPs could have alpha channels. That's PNG's job. They have alpha support for years. I know that I implemented alpha support in a (java) bmp reading lib I coded about 4 years ago - and 4 computer years are like 40 human years ... -- |
Matthew Leverton
Supreme Loser
January 1999
![]() |
Quote: It wasn't. But one wonders why you would release a release candidate without telling anyone... Just for the record: people on the mailing list, on IRC, and here were told, but it didn't make it on SF because people were either away on vacation or busy with SpeedHack. |
Trumgottist
Member #95
April 2000
![]() |
Downloaded it and recompiled Rocket Duel, which seems to be working just as well after the upgrade from 4.0. A big thanks to those with the skill and motivation to work on things like Allegro! Without people like you, people like me probably wouldn't be making games. -- Play my game: Frasse and the Peas of Kejick |
Fiddler
Member #5,385
January 2005
|
It seems the guys at Gamedev do not like the news The Open Toolkit: a game development library for .Net/Mono. |
Matthew Leverton
Supreme Loser
January 1999
![]() |
It's on the front page... |
Kitty Cat
Member #2,815
October 2002
![]() |
Quote: Almost every file has at least one function the does assignment from a 64bit pointer to a 32bit integer (or worse 16bit). Not really. Allegro uses C99 typedefs (eg. uintptr_t; an unsigned integer capable of holding a pointer value) where available for this. On systems that don't have the typedefs, Allegro has to assume a 32-bit target. Since Microsoft doesn't want to follow the C99 standard, it's their own fault for not supplying comparible typedefs. -- |
Matthew Leverton
Supreme Loser
January 1999
![]() |
What do the references to uintptr_t here mean? |
Kitty Cat
Member #2,815
October 2002
![]() |
Interesting. I don't believe Allegro uses them in MSVC. Figures that they couldn't use stdint.h like the standard says. Someone should update Allegro's VC headers for them before 4.2. What VC version are they in? -- |
Matthew Leverton
Supreme Loser
January 1999
![]() |
MSVC 6 1/***
2*stddef.h - definitions/declarations for common constants, types, variables
3*
4* Copyright (c) 1985-1997, Microsoft Corporation. All rights reserved.
5*
6*Purpose:
7* This file contains definitions and declarations for some commonly
8* used constants, types, and variables.
9* [ANSI]
10*
11* [Public]
12*
13****/
14
15#if _MSC_VER > 1000
16#pragma once
17#endif
18
19#ifndef _INC_STDDEF
20#define _INC_STDDEF
21
22#if !defined(_WIN32) && !defined(_MAC)
23#error ERROR: Only Mac or Win32 targets supported!
24#endif
25
26
27#ifdef __cplusplus
28extern "C" {
29#endif
30
31
32
33/* Define _CRTIMP */
34
35#ifndef _CRTIMP
36#ifdef _DLL
37#define _CRTIMP __declspec(dllimport)
38#else /* ndef _DLL */
39#define _CRTIMP
40#endif /* _DLL */
41#endif /* _CRTIMP */
42
43/* Define __cdecl for non-Microsoft compilers */
44
45#if ( !defined(_MSC_VER) && !defined(__cdecl) )
46#define __cdecl
47#endif
48
49/* Define _CRTAPI1 (for compatibility with the NT SDK) */
50
51#ifndef _CRTAPI1
52#if _MSC_VER >= 800 && _M_IX86 >= 300
53#define _CRTAPI1 __cdecl
54#else
55#define _CRTAPI1
56#endif
57#endif
58
59
60/* Define NULL pointer value and the offset() macro */
61
62#ifndef NULL
63#ifdef __cplusplus
64#define NULL 0
65#else
66#define NULL ((void *)0)
67#endif
68#endif
69
70
71#define offsetof(s,m) (size_t)&(((s *)0)->m)
72
73
74/* Declare reference to errno */
75
76#if (defined(_MT) || defined(_DLL)) && !defined(_MAC)
77_CRTIMP extern int * __cdecl _errno(void);
78#define errno (*_errno())
79#else /* ndef _MT && ndef _DLL */
80_CRTIMP extern int errno;
81#endif /* _MT || _DLL */
82
83
84/* define the implementation dependent size types */
85
86#ifndef _PTRDIFF_T_DEFINED
87typedef int ptrdiff_t;
88#define _PTRDIFF_T_DEFINED
89#endif
90
91
92#ifndef _SIZE_T_DEFINED
93typedef unsigned int size_t;
94#define _SIZE_T_DEFINED
95#endif
96
97
98#ifndef _WCHAR_T_DEFINED
99typedef unsigned short wchar_t;
100#define _WCHAR_T_DEFINED
101#endif
102
103
104#ifdef _MT
105_CRTIMP extern unsigned long __cdecl __threadid(void);
106#define _threadid (__threadid())
107_CRTIMP extern unsigned long __cdecl __threadhandle(void);
108#endif
109
110
111#ifdef __cplusplus
112}
113#endif
114
115#endif /* _INC_STDDEF */
MSVC 7 (.NET) 1/***
2*stddef.h - definitions/declarations for common constants, types, variables
3*
4* Copyright (c) 1985-2001, Microsoft Corporation. All rights reserved.
5*
6*Purpose:
7* This file contains definitions and declarations for some commonly
8* used constants, types, and variables.
9* [ANSI]
10*
11* [Public]
12*
13****/
14
15#if _MSC_VER > 1000
16#pragma once
17#endif
18
19#ifndef _INC_STDDEF
20#define _INC_STDDEF
21
22#if !defined(_WIN32)
23#error ERROR: Only Win32 target supported!
24#endif
25
26
27#ifdef __cplusplus
28extern "C" {
29#endif
30
31
32#if !defined(_W64)
33#if !defined(__midl) && (defined(_X86_) || defined(_M_IX86)) && _MSC_VER >= 1300
34#define _W64 __w64
35#else
36#define _W64
37#endif
38#endif
39
40/* Define _CRTIMP */
41
42#ifndef _CRTIMP
43#ifdef _DLL
44#define _CRTIMP __declspec(dllimport)
45#else /* ndef _DLL */
46#define _CRTIMP
47#endif /* _DLL */
48#endif /* _CRTIMP */
49
50/* Define __cdecl for non-Microsoft compilers */
51
52#if ( !defined(_MSC_VER) && !defined(__cdecl) )
53#define __cdecl
54#endif
55
56
57/* Define NULL pointer value */
58
59#ifndef NULL
60#ifdef __cplusplus
61#define NULL 0
62#else
63#define NULL ((void *)0)
64#endif
65#endif
66
67
68/* Declare reference to errno */
69
70#if defined(_MT) || defined(_DLL)
71_CRTIMP extern int * __cdecl _errno(void);
72#define errno (*_errno())
73#else /* ndef _MT && ndef _DLL */
74_CRTIMP extern int errno;
75#endif /* _MT || _DLL */
76
77
78/* Define the implementation dependent size types */
79
80#ifndef _INTPTR_T_DEFINED
81#ifdef _WIN64
82typedef __int64 intptr_t;
83#else
84typedef _W64 int intptr_t;
85#endif
86#define _INTPTR_T_DEFINED
87#endif
88
89#ifndef _UINTPTR_T_DEFINED
90#ifdef _WIN64
91typedef unsigned __int64 uintptr_t;
92#else
93typedef _W64 unsigned int uintptr_t;
94#endif
95#define _UINTPTR_T_DEFINED
96#endif
97
98#ifndef _PTRDIFF_T_DEFINED
99#ifdef _WIN64
100typedef __int64 ptrdiff_t;
101
102#else
103typedef _W64 int ptrdiff_t;
104#endif
105#define _PTRDIFF_T_DEFINED
106#endif
107
108
109#ifndef _SIZE_T_DEFINED
110#ifdef _WIN64
111typedef unsigned __int64 size_t;
112#else
113typedef _W64 unsigned int size_t;
114#endif
115#define _SIZE_T_DEFINED
116#endif
117
118
119#ifndef _WCHAR_T_DEFINED
120typedef unsigned short wchar_t;
121#define _WCHAR_T_DEFINED
122#endif
123
124/* Define offsetof macro */
125
126#ifdef _WIN64
127#define offsetof(s,m) (size_t)( (ptrdiff_t)&(((s *)0)->m) )
128#else
129#define offsetof(s,m) (size_t)&(((s *)0)->m)
130#endif
131
132
133#ifdef _MT
134_CRTIMP extern unsigned long __cdecl __threadid(void);
135#define _threadid (__threadid())
136_CRTIMP extern uintptr_t __cdecl __threadhandle(void);
137#endif
138
139
140#ifdef __cplusplus
141}
142#endif
143
144#endif /* _INC_STDDEF */
MSVC 7.1 (.NET 2003) 1/***
2*stddef.h - definitions/declarations for common constants, types, variables
3*
4* Copyright (c) Microsoft Corporation. All rights reserved.
5*
6*Purpose:
7* This file contains definitions and declarations for some commonly
8* used constants, types, and variables.
9* [ANSI]
10*
11* [Public]
12*
13****/
14
15#if _MSC_VER > 1000
16#pragma once
17#endif
18
19#ifndef _INC_STDDEF
20#define _INC_STDDEF
21
22#if !defined(_WIN32)
23#error ERROR: Only Win32 target supported!
24#endif
25
26
27#ifdef __cplusplus
28extern "C" {
29#endif
30
31
32#if !defined(_W64)
33#if !defined(__midl) && (defined(_X86_) || defined(_M_IX86)) && _MSC_VER >= 1300
34#define _W64 __w64
35#else
36#define _W64
37#endif
38#endif
39
40/* Define _CRTIMP */
41
42#ifndef _CRTIMP
43#ifdef _DLL
44#define _CRTIMP __declspec(dllimport)
45#else /* ndef _DLL */
46#define _CRTIMP
47#endif /* _DLL */
48#endif /* _CRTIMP */
49
50/* Define __cdecl for non-Microsoft compilers */
51
52#if ( !defined(_MSC_VER) && !defined(__cdecl) )
53#define __cdecl
54#endif
55
56
57/* Define NULL pointer value */
58
59#ifndef NULL
60#ifdef __cplusplus
61#define NULL 0
62#else
63#define NULL ((void *)0)
64#endif
65#endif
66
67
68/* Declare reference to errno */
69
70#if defined(_MT) || defined(_DLL)
71_CRTIMP extern int * __cdecl _errno(void);
72#define errno (*_errno())
73#else /* ndef _MT && ndef _DLL */
74_CRTIMP extern int errno;
75#endif /* _MT || _DLL */
76
77
78/* Define the implementation dependent size types */
79
80#ifndef _INTPTR_T_DEFINED
81#ifdef _WIN64
82typedef __int64 intptr_t;
83#else
84typedef _W64 int intptr_t;
85#endif
86#define _INTPTR_T_DEFINED
87#endif
88
89#ifndef _UINTPTR_T_DEFINED
90#ifdef _WIN64
91typedef unsigned __int64 uintptr_t;
92#else
93typedef _W64 unsigned int uintptr_t;
94#endif
95#define _UINTPTR_T_DEFINED
96#endif
97
98#ifndef _PTRDIFF_T_DEFINED
99#ifdef _WIN64
100typedef __int64 ptrdiff_t;
101#else
102typedef _W64 int ptrdiff_t;
103#endif
104#define _PTRDIFF_T_DEFINED
105#endif
106
107
108#ifndef _SIZE_T_DEFINED
109#ifdef _WIN64
110typedef unsigned __int64 size_t;
111#else
112typedef _W64 unsigned int size_t;
113#endif
114#define _SIZE_T_DEFINED
115#endif
116
117
118#ifndef _WCHAR_T_DEFINED
119typedef unsigned short wchar_t;
120#define _WCHAR_T_DEFINED
121#endif
122
123/* Define offsetof macro */
124
125#ifdef _WIN64
126#define offsetof(s,m) (size_t)( (ptrdiff_t)&(((s *)0)->m) )
127#else
128#define offsetof(s,m) (size_t)&(((s *)0)->m)
129#endif
130
131
132#ifdef _MT
133_CRTIMP extern unsigned long __cdecl __threadid(void);
134#define _threadid (__threadid())
135_CRTIMP extern uintptr_t __cdecl __threadhandle(void);
136#endif
137
138
139#ifdef __cplusplus
140}
141#endif
142
143#endif /* _INC_STDDEF */
MSVC 8 (.NET 2005) 1/***
2*stddef.h - definitions/declarations for common constants, types, variables
3*
4* Copyright (c) Microsoft Corporation. All rights reserved.
5*
6*Purpose:
7* This file contains definitions and declarations for some commonly
8* used constants, types, and variables.
9* [ANSI]
10*
11* [Public]
12*
13****/
14
15#if _MSC_VER > 1000
16#pragma once
17#endif
18
19#ifndef _INC_STDDEF
20#define _INC_STDDEF
21
22#include <crtdefs.h>
23
24#ifdef __cplusplus
25extern "C" {
26#endif
27
28/* Define NULL pointer value */
29
30#ifndef NULL
31#ifdef __cplusplus
32#define NULL 0
33#else
34#define NULL ((void *)0)
35#endif
36#endif
37
38
39/* Declare reference to errno */
40
41_CRTIMP extern int * __cdecl _errno(void);
42#define errno (*_errno())
43
44
45/* Define offsetof macro */
46
47#ifdef __cplusplus
48
49#ifdef _WIN64
50#define offsetof(s,m) (size_t)( (ptrdiff_t)&reinterpret_cast<const volatile char&>((((s *)0)->m)) )
51#else
52#define offsetof(s,m) (size_t)&reinterpret_cast<const volatile char&>((((s *)0)->m))
53#endif
54
55#else
56
57#ifdef _WIN64
58#define offsetof(s,m) (size_t)( (ptrdiff_t)&(((s *)0)->m) )
59#else
60#define offsetof(s,m) (size_t)&(((s *)0)->m)
61#endif
62
63#endif /* __cplusplus */
64
65#ifdef _MT
66_CRTIMP extern unsigned long __cdecl __threadid(void);
67#define _threadid (__threadid())
68_CRTIMP extern uintptr_t __cdecl __threadhandle(void);
69#endif
70
71
72#ifdef __cplusplus
73}
74#endif
75
76#endif /* _INC_STDDEF */
1
2#ifndef _SIZE_T_DEFINED
3#ifdef _WIN64
4typedef unsigned __int64 size_t;
5#else
6typedef _W64 unsigned int size_t;
7#endif
8#define _SIZE_T_DEFINED
9#endif
10
11#ifndef _INTPTR_T_DEFINED
12#ifdef _WIN64
13typedef __int64 intptr_t;
14#else
15typedef _W64 int intptr_t;
16#endif
17#define _INTPTR_T_DEFINED
18#endif
19
20#ifndef _UINTPTR_T_DEFINED
21#ifdef _WIN64
22typedef unsigned __int64 uintptr_t;
23#else
24typedef _W64 unsigned int uintptr_t;
25#endif
26#define _UINTPTR_T_DEFINED
27#endif
28
29#ifndef _PTRDIFF_T_DEFINED
30#ifdef _WIN64
31typedef __int64 ptrdiff_t;
32#else
33typedef _W64 int ptrdiff_t;
34#endif
35#define _PTRDIFF_T_DEFINED
36#endif
37
38#ifndef _WCHAR_T_DEFINED
39typedef unsigned short wchar_t;
40#define _WCHAR_T_DEFINED
41#endif
42
43#ifndef _WCTYPE_T_DEFINED
44typedef unsigned short wint_t;
45typedef unsigned short wctype_t;
46#define _WCTYPE_T_DEFINED
47#endif
|
|
|