Open Source Tomb Raider Engine
Du kannst nicht mehr als 25 Themen auswählen Themen müssen mit entweder einem Buchstaben oder einer Ziffer beginnen. Sie können Bindestriche („-“) enthalten und bis zu 35 Zeichen lang sein.

ChangeLog 40KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182
  1. OpenRaider Developer Branch
  2. ChangeLog
  3. ==================================================================
  4. OpenRaider (0.1.2) xythobuz <xythobuz@xythobuz.de>
  5. [ 20140109 ]
  6. * Added greatest Test Framework, rewrote Sound Test
  7. * Renamed all memeory references to memory
  8. * Moved headers into include/
  9. * Put Unit Tests into test/
  10. [ 20140107 ]
  11. * Removed hel/Mass. There was an object of this class in World,
  12. but it was never used!
  13. * Removed even more unused files (mstl/Vector.cpp,
  14. hel/BoundingVolume.cpp, hel/Entity.cpp, hel/ParticleMass.h,
  15. mstl/Stack.h)
  16. * Completely removed hel/Simulation, as it depends on missing
  17. files (hel/CollisionObject)
  18. * Improved Makefile portability
  19. [ 20140106 ]
  20. * Hel Simulation Test builds, but doesn't work!
  21. [ 20140105 ]
  22. * Fixed the TR2 & TR3 SFX file loading to read the original MAIN.SFX
  23. * Fixed strange Mouse Y-Axis Overflow bug
  24. * Cleanup of Makefile
  25. [ 20140104 ]
  26. * Hel Unit Test build & passes
  27. * Spring & Simulation Tests unbuildable, missing files?
  28. * GLString Unit Test builds, works not every time?
  29. * TombRaider Unit & Regression Test working
  30. [ 20140103 ]
  31. * Removed more (unused?) code, PSKModel & UTPackage
  32. * Removed unused MD3, mtk3d, MtkImage stuff!
  33. [ 20140102 ]
  34. * Improved the Mac build steps...
  35. Freealut now in /usr/local so we don't need to call
  36. install_name_tool on the built binary
  37. * Removed the old & unused GLUTSystem
  38. * Replaced the (unknown) included sample sound file
  39. * Removed some redundant build config defines
  40. [ 20140101 ]
  41. * Fixed Wavebuffer loading of Sound subsystem, as well as
  42. making the Sound Unit Test buildable on Mac.
  43. Added new argument to loadWav, length of buffer.
  44. * Changed (unknown) included Font to Droid Sans Mono
  45. * Fixed Render bug, now console is visible again
  46. * Implemented CMD + Q shortcut on Mac to quit
  47. * Added bool mFirstMouseEvent to SDLSystem used to ignore
  48. the first received mouse event, because its faulty, thanks
  49. to an SDL bug:
  50. http://gamedev.stackexchange.com/questions/33519/trap-mouse-in-sdl#comment56642_33554
  51. * Fixed incredibly slow mouse/camera movements
  52. * Fixed mouse grabbing in fullscreen mode. Also make mouse
  53. invisible and grab it in windowed mode
  54. [ 20131231 ]
  55. * Added bool mFullscreen to SDLSystem, tried to fix Fullscreen
  56. mode on Mac, still not working correctly, but better :)
  57. [ 20131227 ]
  58. * Moved included documents into GitHub Repo wiki
  59. (https://github.com/xythobuz/OpenRaider/wiki)
  60. * Reduced start up time by increasing animation speed
  61. [ 20131221 ]
  62. * Reimplemented deprecated gluLookAt()
  63. * Reimplemented deprecated gluPerspective()
  64. * Reimplemented deprecated gluBuild2DMipmaps()
  65. * Reimplemented alutLoadWAVFile(), seems not to be working
  66. * Moved mac distribution logic from makefile into scripts
  67. [ 20131219 ]
  68. * Bundle now contains dynamic libraries not included with Mac OS X
  69. * Bundle now runs setup if needed
  70. * Fixed memory test builds not running on OS X
  71. [ 20131218 ]
  72. * Enabled ALUT on Mac OS X
  73. * Silenced many warnings regarding non-writable string constants
  74. * Fixed issues with linked libraries on Mac OS X
  75. * Implemented support for bundling OpenRaider as Mac App
  76. * Removed Microsoft Visual Studio Project files
  77. * Removed Screenshot Script
  78. [ 20131217 ]
  79. * No longer segfaults on launch in Mac OS X
  80. [ 20131215 ]
  81. * Wrote new README file
  82. * Added stub for missing hel/CollisionObject
  83. OpenRaider (0.1.1) Mongoose <mongoose@users.sourceforge.net>
  84. [ 20030713 ]
  85. * UTPackage class forked from PSKModel class
  86. * System class gets download, dir backports
  87. * libferit usage in public CVS
  88. * mtk_tga gets filename parm save and drops color swaping
  89. [ 20030704 ]
  90. * Tested PSKModel with models from:
  91. http://udn.epicgames.com/pub/Content/UnrealDemoModels/
  92. * On the fly resolution change like in unit tests
  93. * GLString obsoleted, undefining HAVE_SDL_TTF
  94. will cause OR to use font.tga texture fallback
  95. * Merged GLString and SDL_TTF utils Texture usage
  96. * TTF renderer replaces texture font system
  97. * Font system using new ortho projection
  98. * Requirements file now in cvs
  99. * Fixed all known level loading issues from new codebase
  100. * Loadlevel command using mapname string
  101. * Maps are validated on rc load
  102. * Experimental TTF support in OpenRaider, Look in RC file
  103. * Removed Console, MtkImage classes from private tree
  104. [ 20030701 ]
  105. * Removing OpenRaider Map use for level/music string storage
  106. ( This means if you set a map to a certain number in rc, then
  107. you can no longer call it by 'load #' )
  108. * Fixed PSKModel unit test build
  109. * Fixed Hel Simulation, Spring unit test builds
  110. [ 20030630 ]
  111. * EXPERIMENTAL on the fly colored -> textured polygon code
  112. ( It's not even funny how bad the colors match currently )
  113. * API changes in Texture class to make it easier to upgrade
  114. * Screeshots stored in ~/.OpenRaider/sshots/
  115. * Fixed broke new multitexture support in Texture class
  116. * Texture class gets color texture generator
  117. * Texture class gets SDL_TTF support from SDLSystem
  118. * Update to OR Texture class ( backports from UnRaider )
  119. * Fixed matrix multiplcation issues with fixed code generator
  120. * Reworking broken Matrix changes into rollback fix
  121. * Fixes for Matrix based math breakage ( just rolled it rollback )
  122. [ 20030618 ]
  123. * Redone a lot of hel and it's use, broke a lot of things
  124. * UTF-8 and TTF font texture generation support
  125. * Camera broken, Matrix broken, Quaternion broken?
  126. * About finished mtk3d and hel converging
  127. * Phyiscs system base work done
  128. [ 20030604 ]
  129. * Console/command rollover not finished, but working
  130. * BUG portals/walk block too often with current collision
  131. * BUG room sprites have wrong texture ID?
  132. * Unicode key support?
  133. * Some more user definable keys using 'bind' command
  134. * System gets old resource system, new resource system
  135. based on it with dynamic modes and command parsing
  136. [ 20030602 ]
  137. * Mouse grab command
  138. * New key input design, currently using ASCII to
  139. be compatible with old code
  140. * SDL mouse grab toggle back in SDLSystem
  141. * SDL_TTF support starts in SDLSystem
  142. * Made printf string buffering part of System
  143. * Simulation fixes, GL unit test
  144. * Removed main.* from CVS
  145. * Removed Raider.*, gl_util.* from local tree
  146. * Added Mass, ParticleMass, Simulation to CVS
  147. * More stat commands for debugging
  148. * Fix for console command marker strip
  149. * Updates to Hel, mass simulator, more vector operators
  150. [ 20030528 ]
  151. * RC file now allows imports of another RC file
  152. ( If you want to be a jackass you *can make it loop )
  153. * RC file now interprets spaces ( User request )
  154. * RC file allows trailing comments now
  155. * Room hopping disabled by default now
  156. ( command hop to enable )
  157. * Swimming movement added to stop-gap movement system
  158. [ 20030526 ]
  159. * Removed some test code from TombRaider
  160. * Fix for TR4 loading using TRC loader
  161. * Fix for solid mode rendering debug ( solid, r_light 1 )
  162. * Fix for wall crash segfault ( Vector.h [] out of bounds )
  163. * Finished up element API, some TRC support for faces
  164. * Stopping work on array renderer until the element
  165. system is back up ( possible backport for 0.1.0? )
  166. * Cleaning up OpenGLMesh prototype API
  167. [ 20030524 ]
  168. * New OpenGLMesh array renderer
  169. * Fix for Vector collection empty handling
  170. * Fix for the 20030519 segfault/lock on exit bug
  171. * More API unification coding, and OpenRaider usage
  172. for room loading
  173. * Watch for a lot of new bugs, this is a lot of
  174. coding changing around
  175. [ 20030522 ]
  176. * More unification, including TRC room translation
  177. support starts ( convert from TRC to OR )
  178. * Handle TRC loading in OpenRaider CVS builds
  179. * TR5 loading tweaking to work for demo paks as well
  180. * Room sprite processing factored out
  181. [ 20030521 ]
  182. * TR5/TRC Sound ripping/in game loading finished
  183. * More TombRaider format unification
  184. * Testing of 0.1.0 and 0.1.1 builds on a GeForce4ti
  185. * TR5/TRC loader finished - loads only nondemo map I have
  186. [ 20030519 ]
  187. * More work on TR5/TRC support now using doc std
  188. * Refactored skeletal class structure
  189. * BUG seems to be leak fix related world clear lock
  190. * Fix: Skeletal animation memory leak
  191. * New rendering routine for new temp mesh type
  192. ( Buggy and expensive, but it's a stop gap )
  193. ( Colored polygons aren't really rendered as such )
  194. * Fix: OpenRaider new mesh API stop-gap handling
  195. * Fix: TombRaider new mesh loader API
  196. [ 20030517 ]
  197. * BUG found in new mesh loader API
  198. ( Quad tess is broken in TombRaider for meshes )
  199. ( Vertex array translation from TombRaider broken )
  200. * Event system partially in place, needs glue as well
  201. * Console commands from RC hack/fix
  202. [ 20030516 ]
  203. * Mesh rendering temp disabled until mesh renderer
  204. is fully redone
  205. * Finally getting a lot of the more complex mesh
  206. building routines pushed behind clean API from
  207. the OpenRaider to the TombRaider class
  208. ( Could cause a lot of new bugs? )
  209. * Event system test structures introduced to World
  210. * Some major work on model_mesh rendering, also
  211. abstracting interface for their construction
  212. * Some minor work on OpenGLMesh renderer, with code
  213. in place to increase performance
  214. [ 20030513 ]
  215. * TombRaider engine abstraction for room
  216. vertex and color loading and parsing
  217. [ 20030512 ]
  218. * New external SFX use for TR2/TR3 paks -- now
  219. all versions load sound files into the game engine
  220. See README for help using external paks.
  221. * New external SFX pak loading support for TR2 and TR3
  222. * Documentation updates and user usability package tests
  223. ( thanks Josh )
  224. * Apt source in place ( see README )
  225. * Automated debian packaging in Makefile ( make debian )
  226. * Animation half ass restored in non lara models agian
  227. * BUG found in SkeletalModel::setFrame - quick disable to
  228. remove crash bug CLOSES 20030101 tmp filing
  229. [ 20030510 ]
  230. * Old TR4 sound support moved behind new interface
  231. * Sound support for TR1 using new interface - have to wait
  232. for external sound pak support for TR2 and TR3
  233. * New sound sample management/interface in TombRaider class
  234. [ 20030509 ]
  235. * Manually patched with JML's UNICODE support
  236. add -DUNICODE_SUPPORT to BASE_DEFS flags in Makefile
  237. [ 20030101 ]
  238. * Seriously broken animation! =)
  239. * I wonder how much this breaks - hacks shoved in to
  240. keep it runnable until the new event system is started
  241. * Skeletal model refactoring
  242. * Seperating entity and animation states and it's ugly
  243. * Finer animation control starts
  244. OpenRaider (0.1.0) Mongoose <mongoose@users.sourceforge.net>
  245. [ 20021228 ]
  246. * Md3 refactoring
  247. * Many Md3 fixes and features out of unit test work
  248. * Huge Md3 unit, testing ground for future TR unit test
  249. [ 20021227 ]
  250. * Md3 easter egg in cvs
  251. * State system work and testing
  252. [ 20021224 ]
  253. * Wireframe color code doc in README
  254. * Minor compile fixes for gcc 3.x
  255. * Default portal display in wireframe mode now
  256. * New hop command to disable room hopping movement
  257. * New r_animate command to enable entity animation test
  258. * Fixed showfps fault on load screen
  259. * Review of System timer
  260. * Replaced FPS estimation with pure frame rate counter
  261. * SDLSystem uses SDL timer now
  262. * Removed some dupilcate console commands out documented
  263. * Depth sorted particles
  264. * Lots of minor depth sorting and vising work
  265. OpenRaider (0.1.0pre11) Mongoose <mongoose@users.sourceforge.net>
  266. * Entity vis no longer considers rooms agian
  267. * New Vector replaces List as renderable container
  268. for a great deal of memory savings
  269. * Room mesh/sprites rendering in nontexture modes agian
  270. * Documentation updates
  271. * Fix entity out of room fix
  272. * New OGL mesh can render with multitexture
  273. * New all bumpmaps are now loaded into texture memory
  274. * New [Network.Server] RC support
  275. * Run console commands from RC file
  276. * Neat new multitexture logo effect
  277. * Hel only build from now on
  278. * "Shooting" test in cvs
  279. * Fixes for depth rendering
  280. * New wireframe mode color codes for renderable type
  281. * Entity sprites back
  282. * Time to move to beta versioning
  283. OpenRaider (0.1.0pre10) Mongoose <mongoose@users.sourceforge.net>
  284. * New sshot upload script for my conv ;)
  285. * New entity rendering vising starts, primative depth sort
  286. * Static ( room models ) using sphere bounding volumes now
  287. * New enumeration coding style project wide starts
  288. * New room depth sorting code starts
  289. * Fix for version stamp in corner
  290. * New update room render list per frame command
  291. * Misc minor sound/animation updates
  292. * Hel vising fix in ViewVolume, hel enabled by default
  293. * Look for bugs caused by huge refactoring of codebase
  294. * Hel objects in all builds
  295. * World class temp keeps Light and OpenGLMesh deps for now
  296. * Refactoring: OpenRaider, Render, TombRaider classes
  297. * World class emerges in cvs ( Big refactoring job )
  298. * Texture use moved into Render class
  299. * Emitter use moved into Render class
  300. * Seperation of physical and rendered world starts
  301. * Hel clean up, unit testing fixes
  302. OpenRaider (0.1.0pre9-20021215) Mongoose <mongoose@users.sourceforge.net>
  303. * New Camera API, clean up starting
  304. * Quaternion ( class ) in cvs
  305. * Toggle for hel use
  306. * Fix port reporting is expected host order agian
  307. * libHel starts creeping into cvs build starting with some vising
  308. * Netcode fix
  309. OpenRaider (0.1.0pre7-20021109) Mongoose <mongoose@users.sourceforge.net>
  310. * Inactive text no longer rendered
  311. * More libhel work
  312. OpenRaider (0.1.0pre7-20021109) Mongoose <mongoose@users.sourceforge.net>
  313. * Little manual route chaining test for the fun of it
  314. * Trace tests
  315. * Merged (all?) GCC 3.2.x minor patches from my knoppix tests
  316. OpenRaider (0.1.0pre6-20020913) Mongoose <mongoose@users.sourceforge.net>
  317. * Fix for console use before level load crash
  318. * TR4 hack to play footsteps when running
  319. * TR4 pak sounds loaded and playable - just not sourced yet
  320. * New play command
  321. * Improved sound support
  322. OpenRaider (0.1.0pre6-20020907) Mongoose <mongoose@users.sourceforge.net>
  323. * TR4 pak sound reading and dumping
  324. ( I couldn't find any paks using compression - however
  325. my algorithm can handle those that may )
  326. * Sound read from TR1 paks agian ( TombRaider.test can dump them )
  327. * TR4 ponytail type guessing algorithm works with TR4 paks
  328. ( May not apply to all custom lara models )
  329. * TR4 pigtails rendering algorithm now too
  330. * In TR4 ponytail works great with default settings
  331. * Up key now gets last command entered
  332. * r_ponytail console command
  333. * All builds use same texture binds as former EXPERMENTAL builds
  334. * Fixed crash related to invalid rooms? Just allowing NULL rooms
  335. in list and handling
  336. * TR4 GL light support ( pretty )
  337. OpenRaider (0.1.0pre6-20020906) Mongoose <mongoose@users.sourceforge.net>
  338. * One room render command and changes for other old commands
  339. * Fix for crash using new room ->adJRoom vector
  340. * Fixed room vertex lighting
  341. * Documentation updates
  342. * New scripts for installing
  343. * New client/server kills
  344. * Thanks dan for tesing multiplayer - lots of bugs found
  345. * Started moving room struct into more of a class type of
  346. collections and what not
  347. OpenRaider (0.1.0pre6-20020905) Mongoose <mongoose@users.sourceforge.net>
  348. * Hack to handle camera out of world - moves to like a FPS
  349. viewpoint -- needs quats and 'dragging' to make it smoother
  350. * Entities drawn in different order to handle large alpha
  351. polygon in rooms ( Hack until sorting algorithm is in place )
  352. * Little hack to force exit of threads w/o calling back
  353. * Lowered network traffic rate and disabled debugging to stdout
  354. OpenRaider (0.1.0pre5-20020904) Mongoose <mongoose@users.sourceforge.net>
  355. * Code to handle bad texture ids, like in Nasa.tr2
  356. * Network multiplayer test Client/Server can now connect
  357. and pass data and generate clients on each end of game
  358. OpenRaider (0.1.0pre5-20020903) Mongoose <mongoose@users.sourceforge.net>
  359. * Network code starts
  360. OpenRaider (0.1.0pre5-20020902) Mongoose <mongoose@users.sourceforge.net>
  361. * Speed boost for entity room clipping
  362. * Fixed color lighting - still some polygons can go all white
  363. * Console commands for clipping and new fly mode
  364. * Getting ready to seperate world clipping and storage from Render
  365. * Cheap wall clipping hack ( works great however )
  366. Doesn't take into account adjoint rooms ( there is a reason )
  367. * EXPERIMENTAL Better GL light support for font/world interaction
  368. * EXPERIMENTAL new level texture loading
  369. * Switching maps in game should never cause crashs anymore
  370. * Found then fixed several memory leaks
  371. * Makefile rule just for memory profiling build ( make memory )
  372. * Vectors replacing Lists for most collection implementations in Render
  373. OpenRaider (0.1.0pre5-20020830) Mongoose <mongoose@users.sourceforge.net>
  374. * Turn animation for fun
  375. * Room vertex lighting back in
  376. * Vertex color/normal support changes for model meshes
  377. * Skeletal model/mesh model collision _support_
  378. OpenRaider (0.1.0pre5-20020824) Mongoose <mongoose@users.sourceforge.net>
  379. * Hop up/down to rooms when in void
  380. * Primative 3rd person camera
  381. * GL light support for TR1-TR3
  382. * New OpenGLMesh fixes black texture bug ( tris texture index was off )
  383. * Removed room mesh rendering from Render
  384. OpenRaider (0.1.0pre5-20020823) Mongoose <mongoose@users.sourceforge.net>
  385. * OpenGLMesh and Light classes start
  386. * OpenRaider becomes singleton ( Trying to reduce Gobal deps )
  387. * Ah, a little free time -- cleaning up Render class a little
  388. OpenRaider (0.1.0pre5-20020818) Mongoose <mongoose@users.sourceforge.net>
  389. * Auto depends generation for certian people =p
  390. OpenRaider (0.1.0pre5-20020817) Mongoose <mongoose@users.sourceforge.net>
  391. * Time based animation tracer
  392. * Rounded out mtk3d a little more with common func from
  393. other projects
  394. * New pathing subsystem
  395. * Relocatable data dir ( thanks joshua for idea )
  396. Set by using init var 'HomeDir'
  397. OpenRaider (0.1.0pre4-20020816) Mongoose <mongoose@users.sourceforge.net>
  398. * Fixed room mesh cache tris texcoors
  399. * Changed room tracking code
  400. * Replaced old room cache mesh texcoor system for tris
  401. * Adjusted TR3, TR4 vertex colors ( So it's not dark )
  402. * New menu state for keys
  403. * Major OpenRaider class clean up, reducing, reformatting for
  404. use with picky compilers, etc
  405. * BUGS update, all maps retested -- should load all TR1-TR4 maps
  406. OpenRaider (0.1.0pre3-20020815) Mongoose <mongoose@users.sourceforge.net>
  407. * Debugging bad texture coor/vertex layout in some TR1/TR3/TR4 quads
  408. * Removed strict dummy quad insertion in OpenRaider::ProcessMoveables
  409. * Wall detection ( no clipping yet )
  410. * Fix for bad cache room mesh crash ( Alpha quads were using bad
  411. values b/c assigned to wrong structure )
  412. * More debugging for bad cache room mesh crash
  413. * New animation fix by making getNumAnimsForMoveable use signed
  414. values ( seems to make TR4 and other levels loadable agian )
  415. * Stopped flickering idle lara by only drawing 1 frame of idle
  416. * Better bad cache quad handling?
  417. OpenRaider (0.1.0pre2-20020814) Mongoose <mongoose@users.sourceforge.net>
  418. * Fix for room quad's texture bug
  419. * Console print system prototype
  420. * Misc clean ups
  421. * Level load menu prototype active by default
  422. * New debug info in game room/sector/pos
  423. * Floor player clipping by sector ( yay )
  424. OpenRaider (0.1.0pre1-20020813) Mongoose <mongoose@users.sourceforge.net>
  425. * Floor player clipping by box ( hhmmm... )
  426. * Backport of Camera
  427. * Backport of SDLSystem prototype to replace SDL wrapper
  428. * Backport of mtk3d with GL style matrices and etc
  429. * Hacky fix for texture ids for room polygons
  430. ( Caused by new fast cache room polygon builder )
  431. * Backport of UnRaider Texture handler
  432. OpenRaider (0.0.5-20020615) Mongoose <mongoose@users.sourceforge.net>
  433. * Todo new texcoors for alpha quads, tris, and alpha tris not done
  434. * Bug found Texture ids broken on new room mesh translation
  435. * Texcoord fix for quads
  436. * Removed damned vertex arrays
  437. OpenRaider (0.0.5-20020609) Mongoose <mongoose@users.sourceforge.net>
  438. * Partially fixed new renderer/translator
  439. OpenRaider (0.0.5-20020608) Mongoose <mongoose@users.sourceforge.net>
  440. * New Makefile optional memeory_test.cpp OBJ injection
  441. * "Commit of Doom" to break cvs source, yay!
  442. OpenRaider (0.0.5-20020607) Mongoose <mongoose@users.sourceforge.net>
  443. * Render cleaned up a little more
  444. * New room mesh system using arrays
  445. OpenRaider (0.0.4-20020405) Mongoose <mongoose@users.sourceforge.net>
  446. * Fixed TR4 bone layering
  447. * Worked on finiding/rendering ponytail some more
  448. * Moved angle clac for tags back into TombRaider class
  449. * Screenshot TGA file fix
  450. OpenRaider (0.0.4-20020405) Mongoose <mongoose@users.sourceforge.net>
  451. * Ponytail hack
  452. * Better UV generation
  453. * Broke TR2 with the new animation framing
  454. * Animation frame 'safety valve' to prevent overflows
  455. until it can be fixed correctly
  456. * Animation translation fixes
  457. OpenRaider (0.0.4-20020404) Mongoose <mongoose@users.sourceforge.net>
  458. * More TR format notes
  459. * TR4 object header
  460. * Minor changes to OpenRaider for speed/calarity
  461. * Idle aframe test code in
  462. OpenRaider (0.0.4-20020403) Mongoose <mongoose@users.sourceforge.net>
  463. * Fix for Lara model picking in TR4
  464. * Fix for TR4 loading ( tr4_light )
  465. * Fix for TR4 loading ( tr4_ai_data )
  466. * Fog support
  467. * Fix for world geo ( room bbox adjust )
  468. * Fix for bad mem usage reporting for overhead
  469. * Fix for HUGE memory leaks in TombRaider class
  470. OpenRaider (0.0.4-20020401) Mongoose <mongoose@users.sourceforge.net>
  471. * Fix for memfile size reporting
  472. * Fix for GLString truncation
  473. * New audio dir support back in
  474. * Fix for insert of tree_insert for memeory
  475. * Iterative version of tree_insert for memeory togglable
  476. at compile time
  477. * Fix for m-string max accounting
  478. * RBTree fix for memeory ( must stop coding after 0200 )
  479. OpenRaider (0.0.4-20020330) Mongoose <mongoose@users.sourceforge.net>
  480. * Stability has degraded with aggressive feature prototyping
  481. * More information for zero allocs
  482. * Fix for some 0 byte allocatations found in project
  483. * Check for 0 byte allocatations
  484. * Old List back in for now - slower, smaller
  485. * Removed many unnessacary sleeps from older builds
  486. * New feature tracks memory usage by file
  487. * Print to screen while loading back
  488. * New GLString now has helper functions for speedy string
  489. updates to replace hacks
  490. * Fixed damn 'memeory' rbtree
  491. * More verbose fatal error reporting
  492. * Reworked memeory prototype into better code
  493. * Removed working list tracker from memeory
  494. OpenRaider (0.0.4-20020329) Mongoose <mongoose@users.sourceforge.net>
  495. * Memeory memory overhead reduction for filename storage
  496. OpenRaider (0.0.4-20020328) Mongoose <mongoose@users.sourceforge.net>
  497. * You may want to disable USE_TREE_MEMINFO until RB is fixed
  498. * Back to dynamic C-strings to save 'memeory memory'
  499. * Wrote a RBTree implementation directly into Memeory util
  500. * TGA debug fix
  501. * Looking at writing RBTree directly into Memeory util
  502. * Fixed driver string memory leak in main found with Memeory
  503. * Fixed GLString memory leak just found with Memeory
  504. * Fixes for release build to avoid memeory debugger
  505. * Memeory changes to avoid new/delete calls internally
  506. affecting MEMEORY_ERROR reports ( much much slower list based )
  507. * New iostreams and memeory header guards
  508. * Doh, corerction on pointer 0 padding
  509. * New delete accounting hack
  510. * New Memeory unit test features/fixes
  511. * Printing addr with hexadecimal for obvious reasons
  512. OpenRaider (0.0.4-20020327) Mongoose <mongoose@users.sourceforge.net>
  513. * Fixed overlapped vars/data members
  514. * Dumps memeory report filename fix
  515. * Dumps memeory report for unfreed on exit now?
  516. * Console commands to debug 'memeory'
  517. * New c func printing option in Tree
  518. * Memeory profiling system starting
  519. * Font data fixes
  520. * Fixed sourceforge cvs tree
  521. OpenRaider (0.0.4-20020325) Mongoose <mongoose@users.sourceforge.net>
  522. * Fixed bug where ent draw didn't account for viewmodel
  523. in same room
  524. * New texture binding method for strict checking and
  525. to avoid prechecks on unsorted polygons
  526. * More rendering toggles for more testing
  527. * Draw room bbox with r_portal
  528. * Moved more commands to console only ( See README )
  529. OpenRaider (0.0.4-20020323) Mongoose <mongoose@users.sourceforge.net>
  530. * Fix rendering bug with r_portal
  531. * RC uses pakdir for strict path enforcement now
  532. * New RC commands for Map/Music that represent backend correctly
  533. ( It's a FIFO, not a sorter )
  534. * RC parser now uses console command parser helper too
  535. * Improvements to console command parser
  536. ( less memory, faster normal case, easier to add new commands )
  537. * Hack to try to unload level shows it's time to start a
  538. rewrite =)
  539. OpenRaider (0.0.4-20020322) Mongoose <mongoose@users.sourceforge.net>
  540. * Screenshot console command
  541. * View model render toggle console command
  542. * View model index fix for entity use
  543. * Console command naming clean up starting
  544. * Console fix for backspacing over prompt
  545. * Load command to load levels by index
  546. * Many more console commands, replacing some key commands
  547. * Sprites render after players now for more accurate scene
  548. * Collapsed some rendering gobals into temp LARA entity gobal
  549. * Portal visual debugging
  550. * Console fix for prompt display after command given
  551. * Fix for bad cvs sync
  552. OpenRaider (0.0.4-20020321) Mongoose <mongoose@users.sourceforge.net>
  553. * Portal (precompiled) use starts
  554. * Very basic console prototype in place
  555. * Render control flags ( Not same as mode flags )
  556. OpenRaider (0.0.3-20020119) Mongoose <mongoose@users.sourceforge.net>
  557. * Compile w/ -DEXPERIMENTAL_EMITTER_TEST to run snow test in game
  558. * Fix for RC loader
  559. OpenRaider (0.0.3-20020111) Mongoose <mongoose@users.sourceforge.net>
  560. * Temp resource redundency pruning solution
  561. * More string safety auditing and fixes
  562. OpenRaider (0.0.3-20020109) Mongoose <mongoose@users.sourceforge.net>
  563. * Hack to fix texture dumping
  564. * More string clean up
  565. OpenRaider (0.0.3-20020108) Mongoose <mongoose@users.sourceforge.net>
  566. * Minor TR support work
  567. * Texture dumping fix for new mtk_tga
  568. * New tristrip rendering sprites
  569. * Changed to snprint in all objects now
  570. * Clean up in texture use
  571. * Clean up in screenshot code
  572. OpenRaider (0.0.3-20020107) Mongoose <mongoose@users.sourceforge.net>
  573. * Animation frame testing hack back keys '[' and ']'
  574. * Reduction of room rendering top levels ( consistent speed? )
  575. * Improvments to texture handling and loading
  576. OpenRaider (0.0.3-20020106) Mongoose <mongoose@users.sourceforge.net>
  577. * Updated mtk_tga from my current mtk_image source
  578. fixes tga save bug and more stuff
  579. * New more correct FPS counter for alpha testers amusement
  580. DisplayFPS=true in init and key command 'f'
  581. * Refactoring and clean up in OpenRaider
  582. * TombRaider getting ready for testing new class based system
  583. * Got new specs for TR4 and TR5
  584. * Readying class based system for new physics and rendering
  585. OpenRaider (0.0.3-20020104) Mongoose <mongoose@users.sourceforge.net>
  586. * Fixes for fast texture cache for older tombraider data
  587. * Fixes for TombRaider unit test
  588. * Makefile changes for gcc 3.0
  589. * GLString use fix, forgot to disable culling - thanks dan
  590. * Keyboard turning ( On keys 1 and 4 for now ) by request =)
  591. OpenRaider (0.0.3-20020103) Mongoose <mongoose@users.sourceforge.net>
  592. * Tune up of Sound
  593. * Disable cusor show on switch to fullscreen also
  594. * GLString scaling
  595. * Seperated InitGame and LoadLevel ( <Alt> l to load level )
  596. * New Sound flags ( allows for easier expansion )
  597. * Start loadscreen before caching sound now
  598. * NOTE audio support is fine - just low memory condition kill
  599. OpenRaider (0.0.3-20020102) Mongoose <mongoose@users.sourceforge.net>
  600. * Broke audio support by switching around
  601. OpenRaider, LoadLevel/SetupAudio
  602. * README update
  603. * Texture caching while reading from diskfile in callback
  604. * New load screen percentage feedback via callback
  605. * Fix for Tombraider multiple Clear() bug
  606. * New load ordering, might break some things
  607. * More work on GLString use in OR
  608. OpenRaider (0.0.3-20020101) Mongoose <mongoose@users.sourceforge.net>
  609. * Speed set on Camera
  610. * Played with some refactoring in OpenRaider class
  611. and thread hacks for external texture use
  612. * New texture loading to make external textures
  613. id independent of TR texture id at load time
  614. * Changed 'load screen' layout and particle setup
  615. * Removed dependence of Emitter on Texture agent - calls
  616. GL texture bind directly now
  617. * Particle partial resync with freyja_particle tree
  618. * Emitter partial resync with freyja_particle tree
  619. * Render minor reduction/refactoring, breaking up some code
  620. * New GL font system for OpenRaider ( GLString )
  621. OpenRaider (0.0.3-20011231-2) Mongoose <mongoose@users.sourceforge.net>
  622. * GlGetString use 'correct' fix
  623. * Music list reimplemented for CVS
  624. * Emitter commited to CVS ( oopsie )
  625. * Changlog reformated
  626. OpenRaider (0.0.3-20011231) Mongoose <mongoose@users.sourceforge.net>
  627. * New Changlog format
  628. * Minor GL string use 'temp fix' in Render
  629. * ModelDebug option to RC to disable model load debugging
  630. * TODO update
  631. OpenRaider (0.0.3-20010813) Mongoose <mongoose@users.sourceforge.net>
  632. * Minor rendering changes
  633. * Particle test fix
  634. OpenRaider (0.0.3-20010813) Mongoose <mongoose@users.sourceforge.net>
  635. * Particle testing ( Using one of my freyja prototypes )
  636. * Fullscreen toggle - '9' key
  637. OpenRaider (0.0.3-20010810) Mongoose <mongoose@users.sourceforge.net>
  638. * Timer prototype starts, just using a time delay for now
  639. OpenRaider (0.0.3-20010624) Mongoose <mongoose@users.sourceforge.net>
  640. * New reference specs, moved to G400 MGA DRI on X 4.1.0
  641. OpenRaider (0.0.3-20010621) Mongoose <mongoose@users.sourceforge.net>
  642. * Set up new box just for windows TR compatibility tests
  643. ( got old ppro out, bought a hdd for it - weee )
  644. * Testing exported meshes with Freyja
  645. * Freyja plug-in for TRMESH ( TombRaider mesh export )
  646. * Mesh export test for TombRaider
  647. * Texel adjustment method rolled back into TombRaider
  648. OpenRaider (0.0.3-20010620) Mongoose <mongoose@users.sourceforge.net>
  649. * TR4 sky mesh?
  650. * Texture changes
  651. * Freyja work with ponytail graphing
  652. * New FPS counter uses larger frame samples and reset
  653. ( readings still off by a little )
  654. * Splash screen for threaded loads (shakes for fullscreen feedback)
  655. * Particle engine research ( no code )
  656. * Threading testing
  657. OpenRaider (0.0.3-20010619) Mongoose <mongoose@users.sourceforge.net>
  658. * Might wait to install X 4.0.1 to work on bump map rendering
  659. * Render check for multitexture
  660. * Fixed OpenRaider to use new TombRaider::Texture API
  661. * Bump map use with new TombRaider backend API
  662. * "TR3 objtexture alpha clip" back in for 32bit textiles
  663. * More testing features like texture dumping for all versions
  664. * Special texture loading default use in TR4/TR5
  665. * Zero padding on dumped textures - yes, it is about time
  666. * Fixed special texture loading/dumping
  667. OpenRaider (0.0.3-20010618) Mongoose <mongoose@users.sourceforge.net>
  668. * 32bit texture default use in TR4/TR5
  669. * 32bit texture testing in TR5
  670. * Make rule regression testing in cvs tree
  671. `make tombraider.test`
  672. * Better make rules for tombraider.test
  673. * TombRaider fixes for compression use and dellocation
  674. * New TombRaider::LoadTR5
  675. * Worked on TombRaider agent
  676. OpenRaider (0.0.3-20010617) Mongoose <mongoose@users.sourceforge.net>
  677. * Added *some of the TR5 spec to regression test build
  678. OpenRaider (0.0.3-20010616) Mongoose <mongoose@users.sourceforge.net>
  679. * Some minor checks for bad allocation of meshes?
  680. * Changed moveable code to assume nonanimated entity
  681. * Entity drawing tied to room drawing
  682. (For vising, later use an entity cache per room to avoid full cycle)
  683. * Screenshot name now based on VERSION string (better bugs reports)
  684. OpenRaider (0.0.3-20010615) Mongoose <mongoose@users.sourceforge.net>
  685. * Fixed Freyja tree's colored polygons
  686. * More debug output on animation building
  687. * Fixed Freyja's tree too
  688. * Fixed TR4 decompress bug
  689. ( silly me, it only worked because of opt, didn't clear a var )
  690. * Animation grouping prototype
  691. OpenRaider (0.0.3-20010614) Mongoose <mongoose@users.sourceforge.net>
  692. * Fixes for mesh rendering ambient light level
  693. * Fixes for animtion rendering
  694. * Fixes for animation loading
  695. (TR2+ lara has some animation problems still, with junk frames)
  696. (TR1 lara works because all the right indices = 0)
  697. OpenRaider (0.0.3-20010613) Mongoose <mongoose@users.sourceforge.net>
  698. * Fixed animations using steping fix I wrote for libfreyja_egg
  699. this breaks the old TR aniamtion hacks though =)
  700. OpenRaider (0.0.3-20010612) Mongoose <mongoose@users.sourceforge.net>
  701. * Back porting to Freyja to help figure out TR animation problems
  702. * Worked on TR5 and TR4 texture alpha flags
  703. OpenRaider (0.0.3-20010611) Mongoose <mongoose@users.sourceforge.net>
  704. * Fixed skeletal/moveable loading and animation
  705. * Starting entity mapping tracer
  706. OpenRaider (0.0.3-20010610) Mongoose <mongoose@users.sourceforge.net>
  707. * NOTE make enities list so dup models won't draw to same position
  708. * Caching caused segfault - so now emulate dumb smart pointers
  709. * Removed Free TR data, it caused to many segfaults,
  710. for some reason it frees twice even with Clear()
  711. * Caching for duplicate models ( saves tons of memory )
  712. * Fixed loading and animation for all models in level
  713. * Broke animation with new loader?! (caused by new moveable loading)
  714. * Free TR data after load ( May cause segfault on exit )
  715. * Simple vising for items back in
  716. * Oops, removed mesh draw from viewmodel renderer
  717. ( was debuging item meshes )
  718. * Fixed tr4 (2 layer tags) flag set on non lara models
  719. * Fixed moveable loading
  720. * Looking for moveable object drawing problems ( werid )
  721. * Fixed item positioning set on load
  722. * Fixed sprite/room amb lighting back to white ( heh, oops )
  723. OpenRaider (0.0.3-20010609) Mongoose <mongoose@users.sourceforge.net>
  724. * Void color only when outside world
  725. * Various minor renderer changes
  726. * Static mesh rendering fix (pad bad meshes with NULL meshes)
  727. * Fixed lara's colored polygons index bug for TR1
  728. * Autoload lara as view model
  729. * Tr4 two mesh system use
  730. * Basic skeletal model animation (frame rate based)
  731. * Skeletal model rendering
  732. * Skeletal model loader finished
  733. * No quaterions generated in current skeletal loader
  734. It'll be easy to add bone lerping later, but first I want
  735. correct behavior ( ie animation and placement )
  736. OpenRaider (0.0.3-20010608) Mongoose <mongoose@users.sourceforge.net>
  737. * Planning rendering engine #3
  738. * Once skeletal models are in rendering engine #2
  739. physics code can start
  740. * EXPERIMENTAL moveable code starts
  741. OpenRaider (0.0.3-20010607) Mongoose <mongoose@users.sourceforge.net>
  742. * Moveable code finaling coming back in ( now with quats )
  743. * Bug fix to ignore bad meshes in some TR4 levels?
  744. * TombRaider class test
  745. * Some TR5 specs fell in my lap today =)
  746. OpenRaider (0.0.3-20010606) Mongoose <mongoose@users.sourceforge.net>
  747. * Mouse motion control fixes
  748. * Item sprite rendering ( TR1, TR2, and should work for others )
  749. * Item sprite loading ( TR1, TR2, and should work for others )
  750. * Fixed room sprite loading
  751. * Hack temp fixes for camera ( broke it bad last night )
  752. OpenRaider (0.0.3-20010605) Mongoose <mongoose@users.sourceforge.net>
  753. * Baisc strafing and better forward/backward movement on camera
  754. * More user documentation and bug tracking
  755. * Portal toggle
  756. * Fixed TR4 crash on -1 mesh light flag; can't alloc -1 objects =)
  757. OpenRaider (0.0.3-20010604) Mongoose <mongoose@users.sourceforge.net>
  758. * Mouse look code
  759. * The portal code is hindered by the old XZ vis check =(
  760. once it's replaced it should be 100% correct
  761. * Added portal code, and is almost fully working now
  762. * Worked on portal code (testing)
  763. * Since adding quaternion camera, segfault on exit... hhmmm...
  764. * Finished quaternion based camera and rendering
  765. * Planning to break mtk3d into base type classes and expand it as
  766. a library with learping functions for use in animation also =)
  767. * Started on quaternion camera and quaternion support in mtk3d
  768. * TR4 sound fx postioning loader starts
  769. * GL driver string from resource
  770. OpenRaider (0.0.3-20010603) Mongoose <mongoose@users.sourceforge.net>
  771. * OpenGL fixes ( hopefully fixes radeon 'lineloop' bug )
  772. * SDL key code fixes
  773. * More SDL fixes for rendering
  774. * More SDL work, fixes
  775. * FPS counter prints to console every 100 frames
  776. OpenRaider (0.0.3-20010602) Mongoose <mongoose@users.sourceforge.net>
  777. * SDL is very slow atm ( drag ass )
  778. You can edit Makefile to set it to use it if you want
  779. * Finished basic test SDL interface
  780. * Started on item sprite loading (likes a little more, but not priority)
  781. * Aren't you all gald I ditched render engine #1 now? ;)
  782. * New sprite rendering code
  783. * Fixed bug that drew static room meshes twice
  784. * Fixed bug that drew alpha sorted tris 3 times
  785. (Fixes all known alpha rendering bugs)
  786. * Room sprite loading code
  787. * Cleaned code, fixed some documentation
  788. * Started work on Resource agent, not ready to replace old code yet
  789. * No longer dump textures, unless explictly set in rc file
  790. OpenRaider (0.0.3-20010531) Mongoose <mongoose@users.sourceforge.net>
  791. * Fixed XEmacs modes should have been 'Mode: C++'
  792. * Looked at portal design guide, was useless
  793. * Added texel adjust fix to meshes ( fixes 1 pixel off alignment )
  794. OpenRaider (0.0.3-20010530) Mongoose <mongoose@users.sourceforge.net>
  795. * SDL support starts back
  796. * Added my old linux joystick code
  797. * Basic sorted alpha poly render second pass with very small penalty
  798. ( An all new rendering feature never in engine before )
  799. * Figured out best way to sort alpha polys exp with rooms only for now
  800. * SkyMesh support ( rendering/identifing ) for TR2 and TR3
  801. * Static mesh rendering back ( doesn't use room lighting
  802. intensity for now )
  803. * Texel alignment
  804. OpenRaider (0.0.3-20010529) Mongoose <mongoose@users.sourceforge.net>
  805. * Static meshes
  806. * Model meshes
  807. * Mipmaps in Texture as option
  808. * Code clean up
  809. * Item sprite and room sprite loader code about finished
  810. * Finished adding my screenshot code from Freyja, and
  811. made it produce TGAs instead of PPMs ( cmd 'S' )
  812. OpenRaider (0.0.3-20010528) Mongoose <mongoose@users.sourceforge.net>
  813. * POublic CVS Release
  814. * Vertex lighting now functional and stable in new engine
  815. * Fix for TR4 water alpha via textile generator, but
  816. some light shards are still black - might be other
  817. alpha flags that are unknown
  818. * New level loader using _map_list
  819. * New Map list RC rule
  820. * Start of item sprite code in new engine
  821. * Leaving old Texture calls for compaiblity with obsolete
  822. * New textile loading by moving new code into Freyja's
  823. TombRaider module to handle *all pixmap generation
  824. * User documentation
  825. OpenRaider (0.0.3-20010527) Mongoose <mongoose@users.sourceforge.net>
  826. * Testing
  827. * Resource system back in
  828. * AL init threaded off
  829. * Switched order of AL and GL inits
  830. ( so you can have in game progess loader for loading )
  831. OpenRaider (0.0.3-20010526) Mongoose <mongoose@users.sourceforge.net>
  832. * Should have all the best of the engines merged by Monday!
  833. * Started model rendering code for engine #2
  834. * New mode control for WIREFRAME, SOLID, TEXTURE
  835. * Fixed texel index bug for rooms
  836. * New Camera methods for visibility and more accessors
  837. * Render engine #2 feature upgrade by merging with engine #1
  838. OpenRaider (0.0.3-20010525) Mongoose <mongoose@users.sourceforge.net>
  839. * Rendering engine #2 fixes
  840. * New Camera method for positioning
  841. * Rendering engine #2 update
  842. * Added documentation to Sound agent
  843. OpenRaider (0.0.3-20010524) Mongoose <mongoose@users.sourceforge.net>
  844. * Texture manager fixes
  845. * Tesselated quads
  846. * Removed dependence on libmtk_gl ( my GL tool kit for my 3d modeler )
  847. * Moved 16bit ARGB -> 32bit RGBA texture util to TombRaider loader
  848. OpenRaider (0.0.2-20010523) Mongoose <mongoose@users.sourceforge.net>
  849. * Render fixes
  850. * OpenAL fixes for /dev/dsp in use and _init guard
  851. * Added Sound manager, OpenAL support for groovy 3d audio =)
  852. * Dropped all OSS code
  853. * Fixed segfault by freeing _texture and _tombraider twice
  854. * TR4 texture fixes ported from gegg
  855. * Fixed segfault on texture handling
  856. * Removed splash screen code completely
  857. ( Will later use loader screens just like TR )
  858. OpenRaider (0.0.2-20010522) Mongoose <mongoose@users.sourceforge.net>
  859. * Splash screen as compile time support
  860. * PThread support as compile time option
  861. * TR4 texel loading fixes
  862. OpenRaider (0.0.2-20010521) Mongoose <mongoose@users.sourceforge.net>
  863. * OpenRaider request for sourceforge hosting
  864. * New Render class is now the new renderer
  865. * GLUT use abstracted and placed into openraider.cpp
  866. * Mtk Image manager
  867. * Mtk texture manager
  868. * Thread for Freyja loader
  869. * Freyja camera
  870. * OpenRaider RC system design
  871. * Freyja loader replaces yuri loader in test build
  872. * Splash screen
  873. * New engine starts
  874. OpenRaider (0.0.2-20010520) Mongoose <mongoose@users.sourceforge.net>
  875. * Removed drawing another lara as an error marker for movables
  876. * Removed level dumping and saving
  877. * Split up mesh rendering
  878. * New 3rd person lara camera rendering
  879. * New animation control
  880. * This project is based on trueview by yuri and some patches
  881. and porting to linux by Mongoose along with code from
  882. GooseEgg by Mongoose
  883. * Log started