versions.txt 46 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478
  1. ***** 1.50 Release *****
  2. * Added BMK_FASM_OPTS env var support to bmk - defaults to "-m 1048560".
  3. * Fixed bcc parser bug involving 'half quoted' strings.
  4. ***** 1.49 Release *****
  5. * Fixed Fullscreen graphics issue with XCode 4.4
  6. * Removed some DX error checking that was messing up hibernation recovery.
  7. ***** 1.48 Release *****
  8. * Changed BRL/MAXGUI/PUB module licenses to zlib/libpng.
  9. * Fixed OpenAL bug caused by creating/destroying 256 channels.
  10. ***** 1.47 Release *****
  11. * Fixed Mac issues with XCode 4.3.1
  12. ***** 1.46 Release *****
  13. * Fixed some Lion related problems with arrays and ogg files.
  14. * Fixed bug where 2 decls in different modules couldn't use the same name.
  15. ***** 1.45 Release *****
  16. * Fixed d3d9max2d crashing when d3d9 not installed.
  17. * Fixed GC issue with thread local data.
  18. ***** 1.44 Release *****
  19. * Added skid branch of sourceforge maxgui to main release.
  20. * Changed Win32 MinGW distro to nuwen.net - main mingw page is here:
  21. http:///nuwen.net/mingw.html
  22. Direct download is currently here:
  23. http://nuwen.net/files/mingw/mingw-7.2.exe
  24. This version includes gcc4.6, and is much easier to install.
  25. The 'pre built' BRL and Pub modules shipped with this update have already been built with this new version of MinGW, but you will probably need to rebuild any 3rd party modules you may have installed. Otherwise, you are likely to get weird linker errors.
  26. * Fixed bmk failing to link with gcc4.6 on Linux.
  27. ***** 1.43 Release *****
  28. The Lion update!
  29. * Toolbar 'separators' appear to be broken on Lion, but toolbar 'spaces' are OK so kludged MaxGUI to use spaces instead of separators on Lion and rebuilt MaxIDE. Notified Skid about adding the changes to MaxGUI SVN.
  30. * Fullscreen mode doesn't seem to work on Lion with 10.7 SDK, but does with 10.6 so kludged BMK to use 10.6 when building on Lion. Not at all pretty, but will have to do for now as I really have no idea what is going on with this one.
  31. ***** 1.42 Release *****
  32. * Implemented Difference's glmax2d fix for 'White Texture bug'.
  33. * Implemented a variation on Zeke's d3d9graphics fix for 'switching gfx mode crashes bmx' bug.
  34. * Updated FASM to 1.69.14
  35. ***** 1.41 Release *****
  36. * Clamped strings sent to debugger to maxlength of 4096.
  37. * Moved thread data C code from brl.threads to brl.blitz so new MT debugger can have at 'em.
  38. * Functions that call non-bmx functions now push all callee save regs to prevent problems with premature GC on wow64.
  39. * Fixed memory allocators so they always do a GCCollect if out of memory.
  40. ***** 1.40 Release *****
  41. * Added debugger_mt.stdio.bmx, new MT friendly debugger courtesy of Otus. This is now imported by appstub.
  42. * setSwapInterval always called now in Win32 glgraphics mod to handle Alt-Tab modifying swap interval.
  43. * Added a JoyCount() call to the top of freejoy.bmx to kickstart Mac/Linux drivers.
  44. * Turned off OpenAL debug logging!
  45. * Implemented fix for Brucey's Mac bbMilliSecs fix in blitz_app.c
  46. ***** 1.39 Release *****
  47. * Added DesktopWidth(), DesktopHeight(), DesktopDepth(), DesktopHertz() function to BRL.Syste,
  48. * Fixed TryLockMutex on Mac/Linux.
  49. * TGLImageFrame now enqueues textures for deletion to prevent problems with glDeleteTextures in wrong thread when GCing in MT.
  50. * Implemented Seb's Mac bbSystemEmitOSEvent fix in system_macos.m
  51. * Implemented Brucey's Mac bbMilliSecs fix in blitz_app.c
  52. * Fixed d3d9 canvas size validation.
  53. ***** 1.38 Release *****
  54. * Fixed BMK crash bug when importing unknown filetypes.
  55. * Implemented new 'fast mutex' condvars on Win32.
  56. * Fixed OpenALAudio ResumeChannel bug where an already playing channel was being rewound.
  57. * Updated Pub.FreeType to 2.3.11
  58. * Added bbStringFromNSString() and NSStringFromBBString() to macos.m for Brucey. Added macos.h.
  59. * Updated IDE to Seb's latest version.
  60. * More (are we there yet?!?) fixes to bbStringFromUTF()!
  61. * Fixed bbGCValidate bug in blitz_gc_ms.c - thanks Otus!
  62. ***** 1.37 Release *****
  63. * Fixed some bugs in bbStringFromUTF8()
  64. * Fixed some leaks in pub.libjpeg module.
  65. * Added .cc and .hh file extension support to bmk.
  66. * Fixed image memory leak in d3d9max2d driver.
  67. * Max2d SetViewport now works in virtual coordinates as set by SetVirtualResolution.
  68. ***** 1.36 Release *****
  69. (Note: dropping 'rc' from releases)
  70. * Added an 'exception handler' to win32 appstub to aid with debugging. It doesn't throw a BlitzMax style exception, just displays a message box and does a DebugStop/exit (just exit in release mode).
  71. * Changed min linewidth in d3d7max2d to 1 to match gl/d3d9.
  72. * Added linewidth support to d3d9max2d.
  73. * Added support for object resurrection to threaded GC.
  74. * Modified compiler to prevent generation of default dtors in threaded mode.
  75. * Removed hacks from dsound and openal audio drivers to deal with resurrected objects.
  76. * New Max2d command: DrawSubImageRect image:TImage,x#,y#,w#,h#,sx#,sy#,sw#,sh#,hx#=0,hy#=0,frame=0
  77. * Changed GCC optimization level in release mode from -Os (smallest) to -O2 (fastest)
  78. * Fixed crash when changing from d3d9->gl drivers using 'raw' graphics commands, ie: without using Graphics/EndGraphics.
  79. ***** 1.35 Release *****
  80. * Moved d3d9 cooperative level test from WndProc to Flip in d3d9 graphics driver.
  81. * Change d3d9 max2d driver to manually generate mipmaps.
  82. * Oops...added image edge smearing to d3d9 driver for non-pow2 images.
  83. * Added some ugly temporary retain/release code to directsound and openal audio drivers to handle problems with threaded GC and finalizers that 'resurrect' objects. Need a more general purpose solution...
  84. * d3d9 max2d driver manually sets alpha to 255 in GrabPixmap.
  85. (RC4)
  86. * Fixed DirectSound audio crashing in threaded mode (GC issue with resurrected objects).
  87. * Added VirtualMouseXSpeed/VirtualMouseYSpeed (test me!)
  88. * Default behaviour of Flip (ie: "Flip -1") has changed:
  89. 1) If graphics hertz was 0, no vsync.
  90. 2) If graphics hertz was not 0, uses soft vsync in windowed mode (ie: possible tearing), hard vsync in fullscreen.
  91. Note: Using "Flip False" or "Flip True" still works as before, forcing vsync off/on.
  92. * New BRL.Graphics command:
  93. GetGraphicsDriver:TGraphicsDriver()
  94. * New BRL.Max2D virtual resolution commands:
  95. SetVirtualResolution width#,height#
  96. VirtualResolutionWidth#()
  97. VirtualResolutionHeight#()
  98. VirtualMouseX#()
  99. VirtualMouseY#()
  100. MoveVirtualMouse( x#,y# )
  101. * Added new official D3D9Max2DDriver. This is the new default for Windows.
  102. * D3D7Max2DDriver will no longer be supported on Vista/Windows 7 etc.
  103. ***** 1.34 Release *****
  104. ::::: IMPORTANT ::::: This will be the last release to support Win95/98/ME.
  105. * Fixed ansii system_ freeing bbTmpCString.
  106. * Fixed OpenURL to handle https://
  107. * Changed execv to execvp in pub.freeprocess.
  108. * Fixed ToLower/ToUpper.
  109. * Fixed pub.libpng so bad PNG's no longer cause an abort(). Instead, a BB "PNG ERROR" exception is thrown.
  110. * Fixed brl.pngloader to handle "PNG ERROR" exceptions and return a null/false result.
  111. * Fixed register allocator. Again.
  112. * Replaced WM_ACTIVATEAPP handling in system.mod/system.win32.c with Seb's WM_ACTIVATE version, as WM_ACTIVATEAPP is BORKED!
  113. * Fixed BMK so THREADED is #define-d for building apps, not just mods.
  114. * Updated pub.glew to latest version (1.5.1). Modified glew2bmx to deal with new GL types (GLint64EXT;GLuint64EXT).
  115. * Added SA_RESTART to sa_flags in blitz_thread.c to fix wait(pid) dying when GC stops world.
  116. * Mac OS 10.6 tweaks.
  117. * Removed BDWGC garbage collector entirely.
  118. * Updated FASM to 1.68.
  119. * Fixed debugger string escaping.
  120. * Improved ToLower/ToUpper unicodeness.
  121. * Changed default installation dir to C:\
  122. * Tuned MS GC significantly.
  123. * Added MouseX/Y/ZSpeed() functions to brl.polledinput.
  124. * Fixed fasm2as bug.
  125. * Linux/Macos mutexes now recursive as per Win32.
  126. * Fixed Win32 RequestDir initial directory.
  127. * Restored hwndOwner=GetActiveWindow() to RequestFile/RequestDir;
  128. * Added MS (Mark Sibly) garbage collector!
  129. * Fixed enet_peer_address - was using completely wrong struct offsets
  130. * Fixed Linux StopTimer - was releasing timer multiple times
  131. * Fixed OpenAL delete buffer leak
  132. ***** 1.33 Release *****
  133. Major unicode fix release!
  134. * MacOS/Linux/Win2K/XP/Vista:
  135. Full unicode support has been added to the BRL, Pub and MaxGUI modules!
  136. * Win95/98/ME:
  137. MaxGUI now provides unicode support but requires unicows.dll to run:
  138. http://www.microsoft.com/downloads/details.aspx?FamilyId=73BA7BD7-ED06-4F0D-80A4-2A7EEAEE17E2&displaylang=en
  139. You will need to copy the included unicows.dll into your BlitzMax directory to run the MaxIDE under 95/98/ME, as MaxIDE uses MaxGUI.
  140. Max apps that use MaxGUI will also need unicows.dll to run under Win95/98/ME. Unfortunately, unicows cannot legally be redistributed with apps so
  141. you will need to notify users in a readme.txt file or similar.
  142. The BRL and Pub modules DO NOT support unicode under Win95/98/ME and do not require unicows.
  143. * MaxIDE now does a quick test to see if it can write to necessary directories when it starts up. This should detect any potential problems with admin/user modes on Vista. Note: If you install Blitzmax to the default "program files" directory on Vista, you will need to use 'run as administrator' to run MaxIDE. Installing BlitzMax elsewhere (for example, good old "c:\") will allow you to run MaxIDE as a non-admin user.
  144. * Several changes to BRL.System and Pub.Stdc - many interfaces that previously used $z and $w params now just use plain Blitz strings. This will hopefully not affect client code in any way!
  145. * AppDir and AppFile detection code moved from BRL.AppStub to BRL.Blitz.
  146. * TChannel Playing() methods in BRL.OpenALAudio and BRL.DirectSoundAudio modified to return False if channel is paused.
  147. * Linux glgraphics window close button now generates EVENT_APPTERMINATE (AppTerminate() in polled mode...) ala Win/Mac instead of just closing/dying.
  148. * Linux glgraphics window size now locked ala Windows, Mac versions.
  149. * Removed exception handling for SIGILL, SIGSEGV, SIGABRT, SIGTERM. These used to get converted to Max style 'Throw's - but only on some platforms and in a quite probably unrecoverable way. Best just to leave these to the OS/debugger to deal with.
  150. * Enabled gcc implicit-function-declaration warnings in BMK.
  151. * Implemented FlushJoy.
  152. ***** 1.32 Release *****
  153. ***** Threads *****
  154. A new 'Threaded build' option in MaxIDE's 'Program/build options' menu allows you to enable threaded builds.
  155. BMK also has a new threaded option (-h).
  156. Thread support is currently limited to commands for creating/using threads, mutexes, semaphores and condvars.
  157. See the BRL.Threads modules for more information.
  158. Threaded builds are 'static' in the same way debug/release builds are. You can use the ?Threaded conditional variable to
  159. determine if your program is being built in threaded mode.
  160. Threaded mode uses a different garbage collector (the Boehm-Demers-Weiser conservative garbage collector). This is
  161. a little slower than the standard BlitzMax garbage collector, but is thread safe (fairly vital!). It can also handle object cycles...
  162. ***** Lua scripting *****
  163. Removed BRL.Retro dependancy from Axe/Pub.Lua.
  164. Added Axe.Lua module to Pub - ie: it's now Pub.Lua.
  165. Added Mark's/Brucey's higher level BRL.MaxLua module.
  166. ***** Unicode *****
  167. Many major improvements to unicode support. Win95/98/ME users will now need unicows installed - see:
  168. http://www.microsoft.com/downloads/details.aspx?FamilyId=73BA7BD7-ED06-4F0D-80A4-2A7EEAEE17E2&displaylang=en
  169. ***** Graphics *****
  170. Added GLShareContexts to enable sharing of OpenGL contexts - should be called before any OpenGL graphics are created.
  171. Dodgy support for GL contexts sharing removed/cleaned up. Multiple GL contexts will no longer be able to share textures/displaylists etc. To the best of my knowledge, no one has ever even used multiple GL contexts, but if there is a demand for this it can be re-enabled (code is lurking...). Will probably never work on Vista + IntelGMA9XX chipsets though due to really, really bad drivers.
  172. Changed GrabPixmap to just grab RGB, no alpha, ala D3D7.
  173. Fixed GrabImage sample and added (empty!) TImage type doc.
  174. ***** Lists and Maps *****
  175. Much faster mergesort now used for linked list sorting.
  176. Null objects no longer allowed in TLists. Asserts have been added to guard against this.
  177. TList.First, TList.Last, TList.RemoveFirst and TList.RemoveLast used to throw exceptions if the list was empty - now, they just return Null.
  178. Null keys no longer allowed in TMaps. Asserts have been added to guard against this.
  179. ***** Audio *****
  180. Fixed DirectSound panning so it's (more) linear.
  181. OpenAL sources in INITIAL state are now considered to be paused/active, preventing premature recycling of cued channels.
  182. Various other fixes to OpenAL driver.
  183. ***** Misc *****
  184. The mysterious, undocumented BRL.Data module has been removed.
  185. Fixed Mac OpenURL not working with freaky filenames.
  186. Added 'TEvent.RegisterId' for adding external event descriptions - currently private.
  187. Also added a public, optional 'description$' param to AllocUserEventId() - this one public.
  188. Linux FreeProcess fixes.
  189. Fixed String.Join() crashing with empty array.
  190. ***** 1.30 Release *****
  191. Major sanity check release!
  192. MaxGUI has been moved to its own module, maxgui.mod.
  193. This means you will now have to manually import maxgui, eg:
  194. Import MaxGUI.MaxGUI 'import maxgui core
  195. Import MaxGUI.Win32MaxGUI 'import win32 version
  196. Import MaxGUI.CocoaMaxGUI 'import macos version
  197. Import MaxGUI.FltkMaxGUI 'import linux version
  198. The default audio driver for Windows has been changed to DirectSound. This means if you don't call SetAudioDriver(), the DirectSound driver will be used. For Mac/Linux, FreeAudio is still the default driver.
  199. Syncmods has been disabled and is no longer supported by BRL. MaxGUI modules are now available in zip form from the 'product updates' page of the 'account' section at blitzbasic.com
  200. Internal changes:
  201. Lots of MaxGUI fixes from Seb.
  202. Added advadpi32 to bmk win32 link
  203. Debugger fix for out of scope objects.
  204. bbGCValidate() added to blitz_gc.c
  205. MaxIDE updated
  206. Brucey's patch: LoadSound method added to TAudioDriver
  207. Fixes and updates from Seb
  208. Fixed GC and final methods reflection bugs
  209. Removed nan/inf docs
  210. Added missing EVENT_HOTKEY ToString case (skid)
  211. Dragbar canvas fix for win32maxguiex compatability
  212. GNet now uses 32 bit floats
  213. Added -bind_at_load to bmk mac linkopts
  214. Fixed blitzmaxpath looping forever
  215. Default win32 audio driver now directsound
  216. Fixed getmodulehandlea/w param
  217. Added exception to loadbytearray/loadstring etc
  218. Sped up replaceall
  219. Fixed macos-version issue with PPC 10.4
  220. Changed to maxgui.mod
  221. ***** 1.28 Release *****
  222. Maintenance release.
  223. Internal changes:
  224. + (BMK/BRL.CocoaMaxGui/Pub.FreeProcess) Fixed various Leopard issues.
  225. + (BRL.Blitz) Fixed array downcasting.
  226. + (BRL.GLGraphics) Reverted mac version to fix windowed/fullscreen swap problems.
  227. + (BRL.FileSystem) Implemented 'FixPath' fix to allow for 'incbin::' style paths.
  228. + (BRL.Win32MaxGui) Fixed textview flicker issue.
  229. + (BRL.Reflection) Fixed issue with array TTypeId losing type desc byte ptr.
  230. + (MAKEDOCS) Fixed missing examples.
  231. + (BCC) Added check for concatenation of multidim arrays - not allowed!
  232. + (Brl.CocoaMaxGui) Implemented Brucey's fixes.
  233. + (BMK) Implemented Brucey's modifications.
  234. + (MaxIDE) Got rid of console text stream.
  235. + (BRL.DirectSoundAudio) Fixed premature release of sound buffer.
  236. + (BRL.OpenALAudio) Fixed faulty detection of 'finished' channels and handling of channel exhaustion.
  237. + (BMK) Added experimental speedup hack. Some issues with deleted bmx files, so off by
  238. default for now. To enable, create an env var called BMK_SPEEDUP set to 1. See bmk_make.bmx for details.
  239. ***** 1.26 Release *****
  240. Mingw is the collection of C/C++ compilers and tools used to build BlitzMax on Windows.
  241. You only need to install Mingw if you plan to rebuild Blitz Research or third party modules. BlitzMax can be used 'as is' to create applications without having to install Mingw.
  242. BlitzMax now uses the latest version of Mingw. The Mingw auto installer is available here:
  243. http://sourceforge.net/project/downloading.php?group_id=2435&use_mirror=jaist&filename=MinGW-5.1.3.exe&2597933
  244. Select 'current' when asked which package to install.
  245. Select 'MinGW base tools' and 'g++ compiler' when asked which components to install.
  246. Vista users: Once installed, you will need to copy the contents of the MinGW\libexec\gcc\mingw32\3.4.2 directory into MinGW\bin.
  247. Finally, make sure to add C:\MinGW\bin (or equivalent) to your system PATH environment variable. This can be done on most versions of windows by right-clicking 'my computer' and selecting properties/advanced/environment variables.
  248. + (MaxIDE) Fixed debugger =$ in strings causing crash.
  249. + (BCC) Added 'Not' to conditional compilation system, eg: ?Not Debug
  250. + (BCC/BRL.Reflection) Reflection support added
  251. + (BRL.Win32MaxGUI) Clamped selection length to actual text length
  252. + (BCC) Souped up auto arrays.
  253. + (BCC) Added array concatenation.
  254. + (BRL.Blitz) Added String.Join$( bits$[] ) and String.Split$[]( separator$ )
  255. ***** 1.24 Release *****
  256. OS X versions less than 10.3.9 no longer supported. This applies to both the IDE and generated apps.
  257. Win95 no longer supported. This applies to both the IDE and generated apps. BlitzMax is unlikely to have worked on Win95 for a while now anyway (haven't tried for a long, long time), but it's now official.
  258. The D3D7 graphics module has been rewritten from scratch. D3D7 Max2D apps should now survive a greater range of 'disruptions' - eg: screensavers, desktop depth changes, other apps going 'exclusive' etc.
  259. The 'buffered' D3D7 device has been removed. It would have required considerable rewriting to fit in with the new driver approach, yet provides dubious speed benefits.
  260. + (BCC/BMK) Added ".mm" import filetype.
  261. + (BRL.Blitz) String.Find now converts start index <0 to 0
  262. + (BRL.D3D7Max2D) Updated to work with d3d7graphics rewrite
  263. + (BRL.D3D7Max2D) Removed buffered driver
  264. + (BRL.GLGraphics) Implemented Brucey's linux window title fix
  265. + (BRL.Max2D) Fixed TImageFont.Draw so it uses float translation
  266. + (BRL.OGGLoader) Added Function SaveOgg
  267. + (BRL.FileSystem) Fixed RealPath breaking win32 //server paths
  268. + (BRL.GNet) Object id's now unmapped ASAP
  269. + (BRL.Map) Fixed MapKeys/MapValues functions to return enumerators
  270. + (BRL.Map) Restored KeyValue enumerator
  271. + (BRL.Map) Added Copy method
  272. + (BRL.Map) Fixed Clear memleak
  273. + (BRL.Pixmap) Added new GL compatible pixel formats
  274. + (BRL.Stream) Fixed 'excpetion' typos
  275. + (BRL.System) Fixed unretained object issue with mouse tracking
  276. + (BRL.System) Fixed windowed mode HideMouse issue
  277. + (BRL.System) Fixed win32 requestfile default extension bug
  278. + (BRL.PNGLoader) libpng update to 1.2.12.
  279. + (BRL.PNGLoader) Extra load error handling.
  280. + (Pub.ZLib) Updated zlib to 1.2.3
  281. + (BCC) Fixed same type names in different modules causing problems.
  282. + (BCC) Fixed Null in Data statements failing silently.
  283. + (BCC) Fixed Object to array cast not returning an array of references.
  284. + (BCC) Fixed abstract methods overriding base methods with different sigs.
  285. + (BCC) Fixed exporting of private Type's - still not technically 'safe'.
  286. + (BCC) Fixed debug info in New() field initialization code
  287. ***** 1.22 Release *****
  288. Various compiler issues fixed.
  289. + (BCC) Extern type method params now accept default values.
  290. + (BCC/BRL.AppStub) Fixed Var params nuking debugger.
  291. + (Docmods) Added Brucey's Import/Include fixeds.
  292. + (BCC) Fixed debug statement location with ElseIf.
  293. + (BCC) Changed toker so spaces now allowed in array decls like [,] etc.
  294. + (BCC) Changed 'ForEach' errors to 'EachIn'.
  295. + (BRL.Bank) Added Lock/Unlock to replace Buf
  296. + (BRL.Retro) Cleaned up Mid$
  297. + (BRL.Blitz) Changed ReadStdin so it can handle any length input
  298. + (BRL.Blitz) Fixed leak in WriteStdout and WriteStderr
  299. + (BRL.Blitz) Added LibStartUp stub
  300. + (BRL.Blitz) Added GCSuspend and GCResume
  301. + (BRL.Blitz) Added experimental dll support
  302. + (BRL.Blitz) Added Nan and Inf keyword docs
  303. + (BRL.Blitz) BCC extern CString fix
  304. + (BRL.D3D7Max2D) Modified TD3D7Max2DDriver.SetGraphics for new dxgraphics commands
  305. + (BRL.D3D7Max2D) Fixed BufferedD3D7 vertex color errors
  306. + (BRL.D3D7Max2D) Changed DrawImage tristrip to trifan to fix subpixel cracking
  307. + (BRL.Event) Added EVENT_GADGETLOSTFOCUS
  308. + (BRL.Event) Added EVENT_KEYREPEAT
  309. + (BRL.EventQueue) Fixed CurrentEvent being retained in queue array
  310. + (BRL.FileSystem) Rebuild for StdC chmod_ linkage
  311. + (BRL.GNet) Some doc fixes
  312. + (BRL.Graphics) Mouse repositioned only in fullscreen mode
  313. + (BRL.Graphics) Flip mode for attached graphics changed to 0
  314. + (BRL.Graphics) Fixed softsync period init bug
  315. + (BRL.Graphics) Fixed softsync routine to prevent overflow
  316. + (BRL.Graphics) Graphics exceptions now caught
  317. + (Pub.FreeJoy) Added JoyHit samplejoy fix, thanks to HamishTheHystericalHamster
  318. + (BRL.JPGLoader) Changed ReadBytes to Read for loader
  319. + (BRL.JPGLoader) Added SaveJPEG function, thanks to Jeffrey D. Panici for the writefunc `fix'
  320. + (BRL.KeyCodes) Removed KEY_NUMSLASH from docs
  321. + (BRL.LinkedList) Changed Reverse to maintain TLink stability
  322. + (BRL.Map) Finally changed to red/back tree!
  323. + (BRL.Map) Added procedural interface
  324. + (BRL.Map) Fixed TMap.Remove:TNode not returning node
  325. + (BRL.Max2D) Fixed collision bug with non alpha/masked images
  326. + (BRL.OGGLoader) Fixed reading past end of stream with some short files
  327. + (BRL.GLGraphics) Added GLDrawPixmp
  328. + (BRL.GLGraphics) Trapped Win32 WM_CLOSE
  329. + (BRL.GLGraphics) Added extra check for use of flip sync extensions under Linux
  330. + (BRL.GLMax2D) Fixed filtered image min filters
  331. + (BRL.Pixmap) Added _source:Object field
  332. + (BRL.Stream) Fixed resource leak in CasedFileName
  333. + (BRL.System) New Linux implementation of OpenURL
  334. + (BRL.System) RequestFile now adds extension to filename on Windows
  335. + (BRL.System) Added EVENT_GADGETLOSTFOCUS handling
  336. + (BRL.System) Added EVENT_KEYREPEAT handling
  337. + (BRL.System) OpenURL now attempts to fully qualify file / http url supplied
  338. + (BRL.System) Fixed MacOS RequestFile to respect wild card filter
  339. + (BRL.System) Fixed mouse hidden by default
  340. + (BRL.System) Fixed HideMouse causing mouse to disappear when in non-client areas
  341. + (BRL.System) Fixed Linux MoveMouse to be relative to the origin of the current Graphics window
  342. + (BRL.TextStream) Modified LoadText to handle stream URLs
  343. + (BRL.TextStream) Added LoadText, SaveText
  344. + (BRL.TextStream) Fixed UTF16LE=4
  345. + (BRL.TextStream) Added TextStream module
  346. ***** 1.20 Release *****
  347. Added some methods to String: StartsWith, EndsWith and Contains - see strings doc in language reference.
  348. + (BRL.FileSystem) Added CopyDir/CopyFile.
  349. + (BCC) Fixed export/import of longs.
  350. + (BRL.Graphics) Fixed soft synced Flip so it doesn't overflow after 4+ hours.
  351. + (Bank) Added Lock/Unlock semantics to replace the direct buffer access. See LockBank/UnlockBank/TBank.Lock/TBank.Unlock - please use these instead of BankBuf/TBank.Buf in future.
  352. + (BCC) Fixed Incbin so it doesn't matter where it is in code.
  353. + (BCC) Tidied up $z and $w again. These can now only be used with extern functions AND function pointers!
  354. + (BCC) Fixed imports of const Nans/Infs.
  355. + (BRL.Math) Added IsNan, IsInf
  356. + (BRL.LinkedList) Added optional CompareFunc parameter to SortList
  357. + (BRL.Graphics) Added DefaultGraphicsFlags() Function
  358. + (BRL.Hook) Added Context parameter to RemoveHook function
  359. + (BRL.MaxGUI) GraphicsFlags removed from CreatePanel, panels now use Graphic's DefaultGraphicsFlags
  360. + (BRL.MaxGUI) Added range checking on gadget item parameters
  361. + (BRL.FLTKMaxGUI) Fixed ClearListItems
  362. + (BRL.FLTKMaxGUI) Fixed some keyboard focus problems
  363. + (BRL.FLTKMaxGUI) Fixed case sensitive shortcut keys issue with fltk1.1.7
  364. + (BRL.FLTKMaxGUI) Fixed Canvas depthbuffers
  365. + (BRL.CocoaMaxGUI) Fixed DisableGadget for TextFields, Sliders and Menus
  366. + (BRL.CocoaMaxGUI) Stopped TreeViewNode with iconstrip crashing with no icon (icon=-1)
  367. + (BRL.CocoaMaxGUI) Stopped stepper Slider value from wrapping around
  368. + (BRL.CocoaMaxGUI) Fixed TextField to scroll single line correctly
  369. + (BRL.CocoaMaxGUI) Added out of range error checks for TextArea commands
  370. + (BRL.Win32MaxGUI) Fixed menu problem with new const cstr() implementation
  371. + (BRL.Win32MaxGUI) Fixed memory leak in cstr() implementation (should be const)
  372. + (BRL.Win32MaxGUI) TextArea gadgets now use unicode
  373. + (BRL.Win32MaxGUI) Fixed SLIDER_STEPPER sliders reporting decremented values
  374. + (BRL.Win32MaxGUI) Fixed GadgetHidden()
  375. + (BRL.System) Added Linux X11 import to remove glgraphics.mod dependency
  376. + (Pub.Lua) Moved to Axe.Lua
  377. + (BCC/BMK etc) Added macos x86 support.
  378. + (BRL.GNet) Fixed low level send/recv leaks.
  379. + (BCC) Added $w support for 16 bit wide chars.
  380. ***** 1.18 Release *****
  381. BlitzMax now generates native x86 code on Intel Macs! The tools in 'bin' (compiler, linker etc) are still distributed as PowerPC apps, and rely on Rosetta (Intel Mac PPC emulation layer) to work. They run surprisingly well, but you may want to have a go at recompiling some of these - esp. MaxIDE - for improved performance. Universal binaries and/or cross compiling not yet supported.
  382. Important note: before using the Intel Mac version, you will need to perform a 'rebuild all modules'. This will probably result in several C compiler warnings which you can ignore.
  383. Fixed a bunch of compiler bugs, and added a '$w' type for 16 bit null terminated 'wide char' strings to complement '$z'. Use of these types is now restricted to 'extern' function parameter and return types.
  384. The compiler no longer allows you to create a pointer to an object via VarPtr (this was always supposed to be the case, but somehow it got overlooked!). Therefore, 'Object Ptr' (or ' Ptr' etc) is no longer accepted. This is because there is not any safe way to write to such a pointer without massively confusing garbage collection/detection. It is still legal to convert an object reference to a 'Byte Ptr', but you should be aware the pointer will only be valid while the object remains 'in scope'.
  385. Unicode support improved on Mac and Windows. Most MaxGUI gadgets are now unicode friendly, and the IDE should be too.
  386. ***** 1.16 Release *****
  387. Pub.ENet module added.
  388. GNet now uses ENet for low level comms. GNetAccept and all peer functions have gone. GNetAccept now built into GNetSync, and GNetConnect now just returns True/False.
  389. + (BRL.GNet) Now uses Pub.Enet
  390. + (Pub.ENet) Added.
  391. + (BCC) Fixed object->ptr conversion causing GC problems.
  392. + (BRL.Win32MaxGUI) Fixed panels with PANEL_GROUP style client child clipping problem
  393. + (BRL.Win32MaxGUI) Fixed incorrect index handling for ModifyGadgetItem on combo and list boxes
  394. + (BRL.System) Fixed win32 clipboard glitches with QS_ALLINPUT bbSystemWait mod
  395. + (BRL.System) CGSetLocalEventsSuppressionInterval fix for MacOS bbSystemMoveMouse
  396. + (BRL.Map) Fixed TMap.Remove:TNode(key) not returning node
  397. + (BRL.CocoaMaxGUI) Fixed NSRequestFont behavior with null default
  398. + (BRL.CocoaMaxGUI) Fixed Disable on Panel and Canvas NSGadgets
  399. + (BRL.Win32MaxGUI) Fixed MenuText and SetMenuText crashes
  400. + (BRL.D3D7Max2D) Fixed lost device from fullscreen tabbing
  401. + (BRL.D3D7Max2D) Fixed MIPMAPPEDIMAGE flag effect on FILTEREDIMAGE setting
  402. + (BRL.MaxGui) Fixed some broken examples due to new 1.14 strict rules
  403. + (BRL.MaxGui) New common maxgui.h header file for use by native drivers
  404. + (BRL.MaxGui) Documented TEXTAREA_ALL, TEXTAREA_CHARS and TEXTAREA_LINES constants
  405. + (BRL.MaxGui) TreeView now uses EventExtra to specify node involved
  406. + (PUB.FreeJoy) Added MacOSX joystick axis Rx,Ry,Rz (JoyR,JoyU,JoyV) and Wheel
  407. + (BRL.D3D7Max2D) Added flush to BufferedD3D7Max2DDriver for SetBlend and SetViewPort
  408. + (BRL.Win32MaxGUI) Fixed lost focus during TextArea formatting
  409. + (BRL.Win32MaxGUI) Fixed ActivateWindow freezing when trying to find first tab stop
  410. ***** 1.14 Release *****
  411. Big change: automatic object/handle conversion has been removed
  412. in Strict mode.
  413. This means code such as...
  414. Local image=LoadImage( "something.png" )
  415. ...will need to be changed to...
  416. Local image:TImage=LoadImage( "something.png" )
  417. ...in strict mode. Ditto for sounds, channels etc.
  418. This may affect quite a bit of code out there, but I believe it's the right thing to do (we really should have done this much earlier). The automatic object/handle conversion has been the source of a large amount of confusion and, quite probably, memory leaks.
  419. You can now perform explicit object/handle conversion using:
  420. HandleFromObject:Int( obj:Object )
  421. HandleToObject:Object( handle:Int )
  422. The first time you call HandleFromObject, you will receive a unique, per-object integer 'handle'. Subsequent calls to HandleFromObject will return the same per-object handle, and you can use the handle with HandleToObject to recover the original object.
  423. When you are done with the handle, don't forget to Release it or the object will leak. Releasing the handle will also cause any future HandleFromObject calls to return a new handle value.
  424. + (BCC) Fixed 'unrelated types' error when comparing extern type objects.
  425. + (BCC) No more implicit object<->handle conversions in strict mode! Use: HandleToObject and HandleFromObject to perform explicit object<->handle conversion.
  426. + (BRL.Stream) Readint -> ReadInt!
  427. + (BCC) Fixed GC bug with auto arrays
  428. + (BRL.Data) Removed TDataStream.NewObject, modified TDataStream.ReadObject.
  429. + (BRL.TextStream) Read/Write methods now use pure text (experimental!)
  430. + (Pub.StdC) Fixed getsockopt
  431. + (BRL.MaxGui) Query renamed QueryGadget
  432. + (BCC) Fixed incrementing precolored reg degree regallocator bug.
  433. + (BRL.Blitz) Removed printf in 'Throw'.
  434. + (BRL.D3D7Max2D) Replaced texture factor with vertex colors for improved driver compatability
  435. + (BRL.Win32MaxGui) Fixed vertical trackbar problems with -ve ranges.
  436. + (Pub.FreeAudio) Fixed freepool sounds Not resetting parameters - thanks To Fetze
  437. + (Pub.DirectX) Added TnL GUID.
  438. + (BRL.DXGraphics) Tries TnL device first.
  439. + (BRL.Win32MaxGui) Fixed SelectedTreeViewNode crash and TreeViewNode GetText method.
  440. + (BRL.AppStub) Removed unused debugger sources.
  441. + (BRL.AppStub) Fixed debugger not showing base type info.
  442. + (BCC) Fixed 'Var expr' causing 'internal error'. 'Var expr' has been removed - use 'expr[0]' instead.
  443. + (BCC) Fixed SuperStrict int import bug.
  444. + (BRL.GLGraphics) Changed capture display to capture all displays for MacOS.
  445. + (BRL.AppStub/BRL.CocoaMaxGui) Fixed missing app menu under latest Tiger.
  446. ***** 1.12 Release *****
  447. BlitzMax version 1.12 represents a major upgrade from version 1.10.
  448. There have been quite a few internal changes, and some things have been removed altogether. In particular:
  449. * FlushMem has GONE! 'Garbage collection' (GC) is now automatic by default. Use GCSetMode to enable/disable automatic GC. To perform a manual GC, use GCCollect.
  450. * MemAlloced() has GONE! Instead, use GCMemAlloced(). This now only reports 'managed' memory usage - ie: objects, string, arrays. For a Max program that doesn't do anything tricky with C/C++ etc, this represents all memory usage by your program.
  451. * MemUsage() has GONE! May return, but hitting Ctrl-Alt-Del and watching memory status will always be the definitive way to monitor memory usage! For Mac/Linux, try 'top' from the command line.
  452. * SOFTSYNC and HARDSYNC are GONE! 'vwait' flag for Flip has returned.
  453. * GetGraphics has GONE! Use GraphicsWidth()/GraphicsHeight()/GraphicsDepth()/GraphicsHertz()/GraphicsFlags() instead.
  454. * BlitzGL (ie: the 'bgl' commands) has GONE! Instead, use the following:
  455. bglCreateContext -> GLGraphics
  456. bglTexFromPixmap -> GLTexFromPixmap
  457. bglAdjustTexSize -> GLAdjustTexSize
  458. bglDrawText -> GLDrawText
  459. bglSwapBuffers -> Flip
  460. * GCMalloc has GONE!
  461. + (brl.pixmap) added bounds check to methods Window/ReadPixel/WritePixel.
  462. + (brl.cocoamaxgui) Cleaned up TextField events.
  463. + (brl.win32maxgui) Cleaned up TextField events.
  464. + (brl.system) Cleaned up file/dir requesters.
  465. + (brl.glgraphics/brl.system) Fixed MacOS EndGraphics bug (system wasn't
  466. being notified of view closing).
  467. + (brl.appstub) Inital NSApp delegate openFile: calls now converted to
  468. argv's.
  469. + (brl.event) Removed unused EVENT_APPDISPLAYCHANGE. Added EVENT_APPOPENFILE - only valid on Mac for now.
  470. + (brl.appstub) MacOS Debugger now just quits if in fullscreen mode - debug
  471. in windowed mode!
  472. + (brl.glgraphics) MacOS GLContext now created at SetGraphics to get round failure with hidden views.
  473. + (bmk/MaxIDE) Simple c/cpp/cxx apps can now be built - don't forget main!
  474. + (BRL.Blitz) MemFree changed: length no longer required. MemAlloc/MemFree now behave much like c's malloc/free.
  475. + (BRL.Blitz) MemAlloced() renamed to GCMemAlloced() - only returns amount of GC controlled mem.
  476. + (BRL.Blitz) MemUsage() gone.
  477. + (BRL.Blitz) Byte ptrs returned by String.ToCString and String.ToWString should now be freed using MemFree.
  478. + (BRL.Max2d) Revamped to handle new graphics system. Each graphics now has its own 'context'.
  479. + (BRL.Graphics) Big cleanup. Moved lots of generic Max2D graphics stuff Graphics/EndGraphics/GraphicsModes etc) here for use with other drivers.
  480. + (BRL.System.Linux) New 1 ms periodic SIGALRM for timer, fltk and xevent message handling
  481. + (BRL.FLKTMaxGui) First beta release of Linux MaxGUI driver
  482. + (MaxIDE) End of line now dictates chr(13)+chr(10) for all saved source files
  483. + (BRL.Win32MaxGUI) Fixed phantom dialog related menu events
  484. + (BRL.System) Improved general os event handling
  485. + (BRL.System) Improved mouse enter/leave event handling
  486. + (BRL.Win32MaxGUI) key/mouse events now forwarded to BRL.System
  487. + (BRL.CocoaMaxGUI) key/mouse events now forwarded to BRL.System
  488. + (BRL.CocasMaxGUI) added more valid menu hotkeys
  489. + (BRL.Win32MaxGUI) added more valid menu hotkeys.
  490. + (BRL.CocoaMaxGui) fixed iconstrip pixmap endian issues
  491. + (BRL.Win32MaxGui) Tidied up dialog behavior stuff
  492. + (BRL.Win32MaxGui) fixed listbox key handling
  493. + (BRL.Win32MaxGui) fixed combobox tabbing
  494. + (BCC/BMK) improved handling of import "blah.a" files
  495. + (BRL.CocoaMaxGui/BRL.Win32MaxGui) added x,y to mousedown/mouseup events
  496. + (BRL.Timer) timer ticks now sent in EventData()
  497. ***** V1.11 DevTeam Release *****
  498. + (BCC) Type scoped globals no longer have to be const!
  499. + (BCC) Fixed Type scoped decls not finding each other
  500. + (BCC) Function pointers can now be treated conditionally
  501. + (BRL.KeyCodes) Removed non-left/right KEY_ equivalents, eg: KEY_SHIFT, KEY_ALT etc.
  502. + (BRL.KeyCodes) Removed KEY_MOUSE equivalents
  503. + (BCC) Fixed abstract methods ignoring default args
  504. + (BCC) Fixed big function condition codes bug on PPC
  505. + (BCC) Fixed fun type balancing
  506. + (BCC) Fixed object var parameters ref counting bug
  507. + (BRL.GLMax2D) Added SetColor/SetClsColor clamping
  508. + (BRL.BMPLoader) Added 32 bit image alpha support
  509. + (Pub.FreeType) Installed latest lib version and kludged big fonts issue
  510. + (Pub.StdC) Fixed network byte ordering for sendto_ and recvfrom_
  511. + (BRL.Font) Improved unicode support
  512. + (BRL.FreeTypeFont) Improved unicode support
  513. + (BRL.Max2D) Improved unicode imagefont support
  514. + (BRL.DXGraphics) Added FPUPRESERVE flag to D3D7 SetCooperativeLevel even though it says...oh, never mind...
  515. + (Pub.FreeAudio) Improved channel playback timing - should fix 'random' latency issues.
  516. --------------------------------
  517. Update Version 1.10 : 09/06/2005
  518. --------------------------------
  519. + Improved syncdocs performance.
  520. + Modserver moved to www.blitzbasic.com/modserver_pub.
  521. + Added a raw Socket module. SocketStream is still there, but now just wraps a raw socket.
  522. + Added MIPMAPPEDIMAGE flag. Images are no longer mipmapped by default. Use this flag if you are planning on 'shrinking' images and want them to be smoothed.
  523. + Added Direct3D7 Max2D driver. This is now the default on Windows, so please replace any 'Framework GLMax2D's in your code with 'Framework D3D7Max2D', or you'll get an error. You can still switch between drivers using SetGraphicsDriver, eg:
  524. SetGraphicsDriver GLMax2DDriver() 'Select OpenGL, OR...
  525. SetGraphicsDriver D3D7Max2DDriver() 'Direct3D7
  526. + Improved MacOS key handling - insert/home/numpad etc added.
  527. + Fixed MacOS not catching some mouse downs.
  528. + Fixed MacOS RequestDir ignoring initialPath.
  529. + Fixed huge functions causing assembler 'FIXUP TOO BIG' error on Mac. Not optimal - just checks for longish functions and uses different branching code.
  530. -------------------------------
  531. Core Version 1.09 : 11 May 2005
  532. -------------------------------
  533. + Win32 Release!
  534. + Tiger compatible Release!
  535. + Fixed IDE issue adding 'C:' as a project.
  536. -------------------------------
  537. Core Version 1.09 : 10 May 2005
  538. -------------------------------
  539. + Last chance testing!
  540. -------------------------------
  541. Core Version 1.07 : 07 May 2005
  542. -------------------------------
  543. + Fixed foreign chars in filenames with Include/Incbin.
  544. + Fixed Framework including all modules in link.
  545. + Added SavePixmapPNG( pixmap,url ). In PNGLoader for now, may move later. Not sure about a PixmapSaver
  546. system yet, as different savers may take different params for compression etc. Could globalize these I
  547. guess.
  548. + Removed LoadStream - use LoadByteArray instead.
  549. + Modified TStreamFactory's CreateStream method so that it has access to the original url object. Added
  550. TBankStreamFactory. This means you can now use banks directly when loading/saving stuff.
  551. + Modified compiler so 'New' can legally be used as a statement.
  552. + Tidied up extern types.
  553. + Fixed modified func params crashing flushmem.
  554. -------------------------------
  555. Core Version 1.06 : 05 Apr 2005
  556. -------------------------------
  557. + Fixed Import path bug, ie: imported bmx files in subdirs not using subdir as currentdir for imports.
  558. + Fixed bug in register allocater with very deeply nested loops.
  559. + General tidy up of core Blitz module.
  560. + Fixed MacIDE so you can 'Save As' non-bmx type file.
  561. + Modified freetype module so you can hook IO. This means you can now Incbin imagefonts.
  562. + Changed object file name munging so cross platform projects can be developed in a common network directory without clashes.
  563. + Added SendMessage method to Object - see 'objects' in language reference.
  564. + Added pub.directx module. This currently only includes a work-in-progress of D3D9.
  565. + Added 'Extern Type' feature - see 'advanced topics' in language reference. This is a very useful feature for using Win32 'Com' objects.
  566. -------------------------------
  567. Core Version 1.05 : 07 Mar 2005
  568. -------------------------------
  569. ***** Changes to MacIDE *****
  570. + Moved MacOS .app dir creation from IDE to BMK.
  571. + Added Build GUI App menu item.
  572. + Now saves locked build filename if reopen files at startup is selected.
  573. + Added character encoding to preferences. This is the 'save' encoding - load encoding is determined automatically.
  574. ***** Changes to BMK *****
  575. + Fixed file leak in bbdoc.
  576. + C compiler now emits warnings.
  577. + Fixed BMK recognizing rem'd out Imports.
  578. + Fixed MacOS Tiger issue - should work OK on Tiger now.
  579. + Moved MacOS .app dir creation from IDE to BMK.
  580. + Added -t (app type) option, eg: "-t console", or "-t gui"
  581. ***** Changes to BCC *****
  582. + Added utf8/utf16 source file support. Source files must start with correct byte 'markers' to be detected: $ef,$bb,$ff for UTF8; $fe,$ff for UTF16 big endian and $ff,$fe for UTF16 little endian.
  583. + Stricter import filetype checking: import source file type must be one of bmx,c,m,s,asm,cpp,cxx,o,a,lib and source file must exist.
  584. + RestoreData labels back in strict mode. Strict mode labels must now appear before a For/While/Repeat/DefData statement.
  585. -------------------------------
  586. Core Version 1.04 : 14 Feb 2005
  587. -------------------------------
  588. ***** Changes to BCC *****
  589. + Added labelled loops (strict mode only). Labels must be preceded by a '#' and must appear immediately before a For, While or Repeat loop. The label can then be used with Exit/Continue, eg:
  590. Strict
  591. #outer_loop
  592. For Local k=1 To 10
  593. #inner_loop
  594. For Local j=1 To 10
  595. Print "k="+k+", j="+j
  596. If k=5 And j=5 Exit outer_loop
  597. Next
  598. Next
  599. Exit/Continue without a label just exits/continues the nearest surrounding loop, as per usual.
  600. + Fixed non-const Global initializer code re-executing everytime global statement visited.
  601. + Fixed debug stm info hardcoded to build blitzmax dir
  602. ***** Changes to Mac IDE *****
  603. + Fixed 'Replace All' confusing line numbering.
  604. ***** Changes to BMK *****
  605. + Now uses bin/bbdoc instead of internal doccer.
  606. ----------------------------
  607. Modules Update : 07 Feb 2005
  608. ----------------------------
  609. ***** Changes to BRL.System (1.03) *****
  610. + Docs
  611. + Added GetChar() and WaitChar()
  612. -------------------------------
  613. Core Version 1.03 : 01 Feb 2005
  614. -------------------------------
  615. ***** Changes to BMK *****
  616. + Fixed bad doc links
  617. ***** Changes to BRL.Max2D (1.04) *****
  618. + Fixed auto_midhandle causing crash if image didn't load
  619. ***** Changes to BRL.System (1.02) *****
  620. + Fixed Win32 MoveMouse in Windowed mode
  621. -------------------------------
  622. Core Version 1.02 : 27 Jan 2005
  623. -------------------------------
  624. ***** Changes to Mac IDE *****
  625. + Added proxy options to syncmods requester.
  626. + Changed open/save string encoding to Latin1.
  627. ***** Changes to Windows/Linux IDE *****
  628. + new debugger support
  629. + convert win32 clipboard to plain text before paste operations
  630. + specify openfile from commandline
  631. + hides main window till all files open
  632. + checks window bounds against desktop size
  633. + added deferred capitalizing cludge
  634. + fixed rem/endrem updating problem
  635. + fixed highlight/redraw noise
  636. + drag&drop file support added
  637. + dropdown menu in code and output windows added
  638. + run with commandline arguments
  639. + block indent/outdent
  640. + fixed drag&drop text crash
  641. + added escape handler to output window to replace auto hide
  642. ***** Changes to BMK *****
  643. + Tweaked GCC args for better x86 FPU code generation.
  644. + Added http escaping for syncmods user and pass.
  645. + Added -y proxy_host:proxy_port option for proxies.
  646. + Added better checking for unsupported file types which were previously being silently ignored.
  647. ***** Changes To BCC *****
  648. * 'Power of' now always used doubles.
  649. * Fixed uninitialized 'resolved' field of 'ClassType'.
  650. + Fixed const global byte/short initializer bug on little endian machines.
  651. + Changed 'Release' so it only takes an int variable parameter.
  652. + Fixed missing Long Min/Max.
  653. + Fixed debug info being generated for Type functions.
  654. + Changed default Extern Global munging from "bb_" prefix to none.
  655. + Fixed arithmetic type balancing so 2 float32 operands mean a float32 result as per spec.
  656. + Fixed unusued Long return vals hanging compiler.
  657. + Fixed arithmetic operators not checking for non-numeric type bug.
  658. ***** Changes to BRL.Blitz (1.02) *****
  659. + Beefed up operator ^.
  660. + Fixed 64 bit Linux compile problem.
  661. ***** Changes to BRL.AppStub (1.01) *****
  662. + Fixed functions in expressions confusing current statement in debugger.
  663. + Cleaned up appstub.win32.c a bit. Removed _control87 setup and FPE handling.
  664. ***** Changes to BRL.Math (1.01) *****
  665. + Recompiled for faster math ops.
  666. ***** Changes to BRL.Stream (1.01) *****
  667. + Moved '\' to '/' kludge from OpenStream to CStream which should fix '\' in Incbins failing and will have absolutely no other side effects whatsoever.
  668. ***** Changes to BRL.Pixmap (1.01) *****
  669. + Fixed RBGA/BGRA docs having same description.
  670. + fixed 'bddoc:' doc error hiding PixmapWidth/PixmapHeight docs.
  671. ***** Changes to BRL.Random (1.01) *****
  672. + Fixed Rand doc error.
  673. ***** Changes to BRL.System (1.01) *****
  674. + Fixed 64 bit Linux compile problem.
  675. + Fixed / extended extensions$ handling in RequestFile
  676. ***** Changes to BRL.BlitzGL (1.02) *****
  677. + Fixed 64 bit Linux compile problem.
  678. + Fixed Win32 windowed mode window size. This should fix a bunch of problems such as 'slightly off' MouseX/Mousey, GrabImage grabbing the title bar and probably more.
  679. + Fixed Win32 restore from fullscreen mode munting other window positions
  680. ***** Changes to BRL.Max2D (1.03) *****
  681. + Added 'draw_last_pixel' to DrawLine (defaults to True).
  682. + Applied AutoMidHandle to images created with CreateImage.
  683. + Added ImagesCollide and ImagesCollide2 functions.
  684. ***** Changes to BRL.GLMax2D (1.02) *****
  685. + Fixed Graphics() not resetting internal state, which was upsetting code with multiple Graphics/EndGraphics calls.
  686. ***** Changes to BRL.TGALoader (1.01) *****
  687. + Fixed endian issues for MacOS users.
  688. ***** Changes to BRL.Audio (1.01) *****
  689. + TSound and TChannel now used as default nullaudio device driver in the event of mute host
  690. ***** Changes to PUB.FreeAudio (1.01) *****
  691. + Enlarged buffer for win32 mixer for SBLive users.
  692. + Increase fragment count from 2 to 3 for lowperformance Linux environments.
  693. + Fixed dynamic rate bug.
  694. ***** Changes to Pub.StdC (1.01) *****
  695. + Rewrote Win32 system_ to use spawn() instead of system(). system() seems to have problems with multiple quoted args, which plays havoc with 'spaced' filenames. Note: spawn() requires an 'extended' app name, eg: 'myapp.exe' not just 'myapp'. May fudge this at a later date.
  696. ***** New modules Pub.Lua (1.11) and Pub.LuaScript (1.11) *****
  697. + Thanks to Thomas Mayer for providing these modules.
  698. -------------------------------
  699. Core Version 1.01 : 17 Dec 2004
  700. -------------------------------
  701. ***** General *****
  702. + Fixed demo timeout problem when demo not installed by admin.
  703. ***** Changes to BMK *****
  704. + Fixed spaces in BlitzMax path problem.
  705. ***** Changes to BCC *****
  706. + Fixed unchecked negative array indices.
  707. + Fixed Null as string initializer crash bug.
  708. ***** Changes to MacIDE *****
  709. + Added font panel.
  710. + Added a simple developer tools check (just looks for '/Developer' dir).
  711. + Fixed 'Hide NewApplication' menu item.
  712. + Fixed 'remblah' triggering rem block.
  713. ***** Changes to BRL.Blitz (1.01) *****
  714. + Tweaked StringFindLast.
  715. ***** Changes to BRL.AudioSample (1.02) *****
  716. + Added Try/Catch around sample loaders to catch stream exceptions.
  717. ***** Changes to BRL.WavLoader (1.01) *****
  718. + Fixed 'data' chunk not found if it didn't come first. Added check for compressed samples (not yet supported).
  719. ***** Changes to BRL.BMPLoader (1.01) ******
  720. + Fixed loader not skipping 256 color palette correctly bug.
  721. ***** Changes to BRL.BlitzGL (1.01) *****
  722. + Added better check for fullscreen creation failure. Note: Mac's which only support soft GL can only do windowed mode.
  723. ***** Changes to BRL.Max2D (1.02) *****
  724. + Fixed CollideImages ignoring endianness bug.
  725. ***** Changes to BRL.GLMax2D (1.01) *****
  726. + Tweaked DrawOval for nicer results.
  727. -------------------------------
  728. Core version 1.00 : 10 Dec 2004
  729. -------------------------------
  730. Initial Release!