[137c2c]: doc / CHANGELOG  Maximize  Restore  History

Download this file

895 lines (876 with data), 50.9 kB

Platform independent changes are marked with '***', otherwise the
applicable platform is listed. If someone besides me found the bug or
suggested the fix, I'll put their name in [ ].

KallistiOS version 2.0.0 -----------------------------------------------
- DC  Broadband Adapter driver fixes [Dan Potter == DP]
- *** Imported a new version of lwIP, with proper sockets lib [DP]
- DC  Added new httpd example for lwIP [DP]
- x86 Added incomplete ia32 port [DP]
- DC  Added new DC examples for Parallax (raster_melt, sinus, delay_cube,
      rotocube) [DP]
- *** Added svnpush.py script for pushing repositories on the web [DP]
- DC  Added genmenu module and example in Tsunami [Dan Potter == DP]
- DC  Added hello-mp3 example [DP]
- DC  320x240 PAL mode [mekanaizer == MK]
- *** Fixed vqenc and kmgenc headers to be ANSI compliant [DP]
- *** New addons/ports build system [DP]
- *** Moved most addons/ports into their own tree/distribution [DP]
- *** Moved several incorrectly placed pieces into libkosutils [DP]
- *** Imported port of Lua 5.0 [DP]
- DC  Added Tsunami Matrix class [DP]
- DC  Various improvements to Tsunami classes [DP]
- *** Major build system overhaul (see RELNOTES) [DP]
- DC  Improved MII/link status handling for BBA driver [DP]
- *** Added NONE thread mode [DP]
- *** lwIP select fixes [Walter van Niftrik == WvN]
- DC  GDB stub fixes [Richard Moats == RM]
- *** New bin2c [Gil Megidish == GM]
- *** Updated genromfs [DP]
- DC  Fixed and re-enabled SPU DMA module [DP]
- DC  Cleaned up PVR DMA functions, adding support for different DMA targets [DP]
- DC  Floating point register support for the GDB stub [RM]
- DC  Added G2 DMA pausing for G2 bus read/write calls [DP]
- *** Added UDP sendto/recvfrom calls in lwIP [DP]
- DC  Added DNS client lwIP example [DP]
- DC  Added ISP settings code to flashrom module [Sam Steele == SS, DP]
- DC  Added ISP settings example [DP]
- *** Added gethostbyname support to lwIP port [DP]
- DC  Updated netcfg to load settings from flashrom [DP]
- DC  Cleaned up DC modem code and added new dialing functions [DP]
- DC  Store Queue and Matrix translation speed ups [Jim Ursetto = JU]
- DC  Support for DMAed vertex buffers in PVR [DP]
- DC  Added mat_transform_sq function [JU]
- DC  Added modified version of Jim Ursetto's serpent example [DP, JU]
- DC  New sound stream manager, sound effect channel addressing support [DP]
- *** Threading fixes for libmp3/liboggvorbisplay/libtremor
      [Viktor, Heinrich Tillack == HT]
- *** Added New dbgio system [DP]
- DC  Various fixes to support new dbgio system [DP]
- DC  Made fsqrt specify fr0 as dirtied [JU]
- *** Updated bin2o to produce properly aligned files [DP]
- DC  Added support for setting fsaa at PVR init [DP]
- DC  Added mat_trans_nodiv, fipr_magnitude_sqr, and fipr [JU]
- *** Added WORLDVIEW matrix, plx_vert_inpm3, and case-insensitive texture
      loading to libparallax [DP]
- *** Added gnu_wrappers (KOS wrappers for GNU tools) [DP]
- DC  Fixed enabling of incorrect ASIC event for SPU DMA [Vincent Penne == VP]
- *** Converted everything to use Newlib as libc/libm rather than the old
      built-in libc/libm [DP]
- *** Added byte ordering functions to koslib [DP]
- DC  Added timer_us_gettime64 function [DP]
- *** Patched things for multi-threaded libstdc++ compilation [JU]
- *** Fixed free(NULL) in debug mode [DP]
- DC  Fixed issues with scif_init and dcload-serial support [DP]
- DC  Added user-entered date support in syscfg_t [Thierry Vermeylen == TV]
- DC  Cleaned up thread usage in libkosh [DP]
- DC  Added new kosh example program using conio [DP]
- DC  Fixed adventure example for new compilers/newlib [DP]
- DC  Added New modem driver (version 1.2) [Nick Kochakian == NK]
- DC  Fixed AICA volume setting [JU]
- DC  Fixed RLE in gdb_stub [RM]
- DC  Fixed an image-garbling bug in vqenc [RM]
- DC  Fixed vqenc mipmap generation [RM]
- DC  Added support for BBA DMA, Improved SPU DMA support, added generic G2 DMA
      functions [VP]
- DC  Updated netcfg to support adding a VMU icon [SS]
- DC  Added GDB-over-dcload support [RM]
- DC  Added support for hard breakpoints/watchpoints using UBC [RM]
- *** Fixed libmp3 sndstream callback's incorrect shifting of the output buffer [RM]
- DC  Added synchronized start command for sound [RM]
- *** Fixed Tsunami genmenu's incorrect device ID in debug output [Atani]
- DC  Added partial VMUFS fixes [Tursi]
- DC  Added block write retrying to VMU driver [Tursi, DP]
- DC  Added a fix for issues with inserting/removing purupuru packs [Tursi]
- DC  Added support for PVR sprites [Lawrence Sebald == LS]
- *** Added new internal network system (alternative to lwIP) [LS]
- DC  Added automatic configuration of the BBA/Lan Adapter from flashrom [LS]
- DC  Added support for the maple Microphone peripheral [LS]
- DC  Added a purupuru driver that has rumble support [LS]
- DC  Added a skeleton Dreameye driver (doesn't do anything useful but it does
      make detection work) [LS]
- *** Fixed the newlib patch [WvN]
- *** Added/fixed various addons headers [SS]
- DC  Added support for GL_TRIANGLE_FAN in KGL [SS]
- *** Added support for antialiased fonts in libparallax [JU]
- *** Adjusted makejitter makefile to use kos-ports headers [SS]
- DC  Fill in dirent.attr for directories in is9660 [SS]
- DC  Applied patch for opening correct iso9660 filenames [Christian Groessler == CG]
- DC  Fixed bitmask for mouse buttons (makes 3rd button useable) [Fragger]
- DC  Added experimental (read: partially working) render to texture support in
      the PVR module [LS]
- DC  Added example program for render-to-texture [LS]
- *** Made thd_sleep(0) work properly [DP]
- *** Added a fix to ARP handling code so that an error is returned rather than
      an incomplete mac address [LS]
- *** Added standard network headers (arpa/inet.h, netinet/in.h, sys/socket.h) [LS]
- *** Added inet_addr function [LS]
- *** Added fs_socket, which implements the standard socket functionality using
      the built-in networking code (only UDP supported though) [LS]
- DC  Correctly set attr member of dirent_t from dcload_readdir [Anonymous]
- *** Added libmp3 volume control function [Atani]
- *** Added support for '.' and '..' in path names [WvN]
- DC  Added in AICA channel position patch [WvN]
- *** Added simple Blender model export plugin [Christian Henz == CH]
- *** Added newlib execve stub [DP]
- *** Made ARP code garbage collection run on each ARP query [LS]
- *** Removed unused net_ntohl/net_ntohs functions [LS]
- DC  Added support for polling for packets on the BBA [LS]
- DC  Added a short delay after init on the LAN adapter, since mine seems to
      crap out if you try to access it too quickly after init [LS]
- *** Made net_ipv4 layer not pass around ethernet headers [LS]
- *** Made net_ipv4 checksum work right for odd byte count messages [LS]
- *** Modify networking code to work properly in an IRQ [LS]
- DC  Added glVertex2f support to KGL [Atani]
- *** Added inet_aton, inet_ntoa, inet_ntop, inet_pton functions and made
      inet_addr use inet_aton [LS]
- DC  Fixed code that did lvalue casts [LS]
- DC  Added in sector size patch [Donald Haase == DH]
- *** Use genwait rather than the condvar in the UDP code [LS]
- DC  Patched SDL with a patch that was quite old to fix audio and controllers [Bero]
- DC  Fixed the SDL timer [OneThirty8 == 138]
- *** Made net_ipv4_send function accept arguments that represent the fields of
      the IPv4 header, rather than a structure of the IPv4 header [LS]
- *** Fixed odd-sized messages in the UDP code [LS]
- *** Removed useless debug messages in UDP code [LS]
- DC  Added support for rates less than 9600 in SCIF driver [CG]
- *** Handle loopback sends more sanely in net_ipv4 [LS]
- *** Change behavior when a send is attempted to a host that does not have a
      cached ARP entry, making sends to new hosts actually work most of the time
      on the first try [LS]
- *** Fixed recv/recvfrom in the UDP code to actually unlock the UDP mutex if
      they have to wait [LS]
- DC  Added fs_dclsocket (dcload over fs_sockets) [LS]
- DC  Fixed SDL to not return incorrect mouse buttons [Cyle Terry == CT]
- *** Added implementations of read/write/seek in fs_socket [LS]
- DC  Fixed readdir on VMUS when the VMU is empty [CG]
- *** Removed useless getAlpha argument in Tsunami's drawable class [CT]
- *** Added reader/writer semaphores [LS]
- DC  Added example program for reader/writer semaphores [LS]
- *** Made Lua use fmodf rather than fmod [Harley Laue == HL]
- *** Fixed memory leak in UDP socket code when the mutex cannot be acquired
      and the code is being executed inside an IRQ [LS]
- DC  Added support for VMU beeping [DH]
- *** Added support for upgrading a read lock on a reader/writer semaphore to
      a write lock [LS]
- *** Added a recursive lock synchronization primitive [LS]
- *** Moved checking for free(NULL) up in code to avoid potential problems [HL]
- DC  fs_ramdisk.c: Don't allow opening a file with O_DIR [CG]
- *** Removed legacy libc and libm [HL]
- DC  Handle potentially misaligned outgoing packets in the BBA driver [LS]
- DC  Added g2_memset_8 function for doing a memset over G2 with locking [LS]
- DC  If a packet is < 60 bytes, pad it with null bytes for clarity, rather than
      just transmitting whatever random junk was in the transmit buffer from
      previous sends [LS]
- DC  Rewrote microphone driver to make it support the different encodings
      available to the hardware [LS]
- DC  Add maple_enum_type_ex function to return the nth device that is of the
      requested type and supports the list of capabilities listed (i.e, the
      function_data of devinfo for that function has all the bits set that are
      set in the cap parameter [LS]
- DC  Made vid_screen_shot support any of the video modes [DH]
- *** Fixes to the network stack to support sending/receiving broadcast packets
      properly [LS]
- GBA Fixed arch/types.h so the toolchain can compile. [HL]
- DC  Adjusted the flashrom_ispcfg_t structure to account for differences
      between PlanetWeb and DreamPassport [LS]
- DC  Added reading of the ISP settings from PlanetWeb to the flashrom code [LS]
- DC  Fixed various pieces of code that rely on flashrom_ispcfg_t [LS]
- *** Added an implementation of DHCP to the network stack [LS]
- DC  Added Dreameye driver that is capable of fetching stored images from the
      device. [LS]
- *** Added kthread_once function (think pthread_once) [LS]
- *** Added pthreads-like thread-local storage [LS]
- DC  Added in support for untextured PVR sprites and added support for the more
      correct polygon header to be sent for sprites [LS]
- DC  Added in some support functions for PVR modifier volumes (and an example
      program that uses them) [LS]
- DC  Added a modifier volume example using textures [LS]
- *** Added a simple statistics system to the IPv4 and UDP layers of the
      network stack [LS]
- *** Added a MTU value to the netif structure for maintaining the maximum
      transfer size of the adapter [LS]
- *** Added the ability to fragment IP packets, and made fragmenting respect
      the MTU [LS]
- *** Added a primary network thread that can be used for timer-based,
      repetitive network tasks (like DHCP renewals), and made the DHCP code
      utilize it [LS]
- *** Added rudimentary IP reassembly support [LS]
- *** Added support for IPv6 in the network stack [LS]
- *** Added support for TCP in the network stack [LS]
- *** Added setsockopt(), getsockopt(), and fcntl() functions, mainly for
      dealing with sockets. Removed the (now useless) fs_socket_setflags()
      function [LS]
- *** Updated patches to use GCC 4.7.0 and Newlib 1.12.0 [LS]
- *** Added initializers for transient semaphores, condvars, and mutexes and
      changed the way that they should be initialized in general [LS]
- *** Added a poll() function, as well as select() [LS]
- *** Added the ability to wake a certain thread with genwait and to specify
      an error code to wake them with [LS]
- DC  Use the fsca and fsrra asm mnemonics in the fmath code since they've
      been supported by binutils since 2004 [LS]
- DC  Detect the region/type of keyboard on attach and map keys in an
      appropriate manner [LS]
- DC  Give each keyboard its own queue of keys [LS]
- DC  Added low-level SPI support on the serial port as well as a block device
      interface for using an SD card with the homebrew adapter [LS]
- *** Added a CRC16-CCITT function [LS]
- *** Added dontwait, waitall, and peek flags for use with sending and receiving
      data on sockets [LS]
- *** Added fs_ext2 to be used with the SD card code (and fixed a lot of bugs
      with it along the way) [LS]
- DC  Added missing txrenv stuff to PVR sprites (thanks to Tvspelsfreak at the
      DCEmulation forums for pointing out it was missing) [LS]
- *** Change how threads are swapped to prevent a high priority thread from
      starving everyone else [LS]
- DC  Create a map file for the ARM code during compilation [CG]
- DC  Return the old border color from vid_border_color() [CG]
- *** Return status codes from fs_close() as is expected in POSIX [CG]
- DC  Actually support 2352 byte sector reads in the cdrom code (thanks to
      Multimedia Mike for noticing it was broken) [LS]
- *** Added fs_symlink() and fs_link() functions to the VFS [LS]
- DC  Fixed a delay loop in aica_get_pos() that was optimized away [CG]
- DC  Added -N to the ARM linker switches to prevent .data from being padded to
      a 32KiB boundary [CG]
- *** Use the O_CREAT flag in fs_copy() on the destination file [LS]
- DC  Added fs_ext2/SD examples sd/ext2fs (basic example showing mounting and
      file I/O) and sd/mke2fs (create a new ext2 filesystem on the SD card) [LS]

KallistiOS version 1.2.0 -----------------------------------------------
- DC  Fix to use DCARM7_CFLAGS when compiling ARM driver [Christian Groessler == CG]
- DC  Fix for typo in vmu_pkg_crc() (submitted by anonymous)
- DC  Fix for incorrect source address in maple packets [Jim Ursetto == JU]
- *** Fix fputs() to not put an extra "\n" [Walter van Niftrik == WvN]
- DC  Fix Makefile for vqenc to work in more cases [Dan Potter == DP]
- DC  Integrated irq_disable() and irq_enable_exc() so that exceptions are
      always enabled. [DP]
- DC  Added pvr_mem_stats() (like malloc_stats but for PVR) [DP]
- *** Removed SYSCALL() usage in favor of thd_block_now() [DP]
- *** Primary timers switched to wakeup interval rather than periodic. [DP]
- *** Fix uninitialized mutex in semaphores [DP]
- *** Added generic waits, and changed semaphores/mutexes to use them [DP]
- DC  Added timer_ms_gettime64() [DP]
- DC  Fix for potential incorrectness in NDEBUG mode in pvr_txr_load_ex [DP]
- DC  Remove float usage in timer_ms_gettime() [DP]
- *** More proper condvar impl using genwaits [DP]
- DC  Strip trailing dots on extensionless ISO filenames (thanks waltervn for 
      pointing this out) [DP]
- *** Fix file descriptor owner bug in fdopen [Bero]
- *** Zlib workaround for KOS file descriptors being non-POSIX [Bero]
- *** Added more proper (mutex-paired) condvars, and tests [DP]
- DC  Tremor: bug fix for mono playback, guaranteed thread exit timing, added
      thd_sleep() to make threading more efficient [DP]
- *** Use dbgio_printk instead of dbgio_printf in printf [Bero]
- DC  System ASIC module now supports IRQ priority levels [DP]
- DC  CD-Rom driver much more thread-friendly [DP]
- *** 'struct netif' renamed to 'struct knetif' to avoid conflicts with lwIP [DP]
- *** Fix for initial '/' in fs_builtin pathnames [Bero]
- *** Moved addons' includes and output libs to under addons/ [DP]
- DC  Updated liboggvorbisplay to use vorbisfile funcs like libtremor [DP]
- DC  Set size to -1 while readdir'ing on /vmu so they appear as dirs [DP]
- DC  Filter chain support for snd_stream [DP]
- DC  Basic flashrom BIOS support [DP]
- DC  Improved PVR statistics reporting [DP]
- DC  Misc improvements to Parallax and Tsunami [DP]
- DC  Add Joliet support to iso9660 and fix a big huge bug in directory
      scanning [Bero, DP]
- DC  Support for alpha channels, PNG input, and KMG output in vqenc [DP]
- DC  New libkmg for loading KMG files output by vqenc [DP]
- *** Added byte_count field to kos_img_t for paletted and VQ'd data [DP]
- DC  Typo in broadband adapter driver flags [Wayne Moorefield == WM]
- DC  Switch to genwaits and remove extra timing in maple VMU module [DP]
- DC  Added skeleton PuruPuru/Jump Pack driver [DP]
- DC  New vmufs middle-layer driver and new fs_vmu that uses it [DP]
- *** Fixed thread non-safety in readpng [DP]
- DC  SPU module wasn't clearing all of sound ram on startup/shutdown [DP]
- DC  New libkmg for loading "KOS image" files from disk [DP]
- DC  Support for opening a stream from a descriptor in liboggvorbisplay [DP]
- DC  Parent-relative colorization and positioning in libtsunami [DP]
- DC  Misc bug fixes and improvements in libtsunami [DP]
- DC  Multi-format texture loading support, getpos() for fonts in plx [DP]
- *** fs_ramdisk attach/detach support [DP]
- *** Added a NOT_OWNER flag for kos_img_t for ROM images, etc [DP]
- DC  Added WIP native dc-load client [DP]
- DC  Added generic vblank hooking system [DP]
- DC  KM_DBG_VERBOSE support for PVR malloc [DP]
- DC  Improved texture memory size detection for debug messages in PVR [DP]
- DC  Switch to vblank for page flipping, stats on vertex buffer usage in PVR [DP]
- DC  Add support for load method flags in pvr_load_texture_ex [DP]
- DC  Add snd_sfx_stop_all() and mmap support for loading samples [DP]
- DC  Improved debug output for sound malloc [DP]
- *** Removed x86-specific code in endian.h [DP]
- DC  New kmgenc utility for pre-twiddling textures [DP]
- DC  Inside-int usability for cdrom_get_status() [DP]
- DC  Tray-open detection using vblank, improved fd invalidation support
      for fs_iso9660 [DP]
- DC  Persistent volume support for liboggvorbis [DP]
- DC  Font fuzziness cleanup and pseudo-newline support in Parallax [DP]
- DC  Added modem driver from Nick Kochakian [NK]
- DC  Added a bunch of fun Kosh builtins [DP]
- DC  Slightly more verbose death message for out-of-mem panic [DP]
- *** Added pure virtual function support in libk++ [DP]

KallistiOS version 1.1.9 ------------------------------------------------
- *** Added private data field, async and stat to VFS [Dan Potter == DP]
- DC  Fix for opening VMU files as dirs [Christian Groessler == CG]
- *** Added fs_mkdir and fs_rmdir [DP]
- *** Added fs_ramdisk (on /ram) [DP]
- *** Added mutex as a wrapper to semaphores [DP]
- *** Switched VFS to use real mutex support [DP]
- *** Added vfs_handler_t parameter to some VFS calls for private data usage [DP]
- *** Changed fs_romdisk to allow multiple romdisk mounts [DP]
- *** Added fs_copy and fs_load util functions [DP]
- *** Changed sem_wait() and sem_wait_timed() so it doesn't assert() if
      called from an interupt [DP]
- *** Added the dlmalloc debugger [DP]
- DC  Fixed bug with samples >64k looping accidentally [DP]
- DC  Added stereo sample support [DP]
- DC  Fixed some alignment issues in 3dutils in libdcutils [DP]
- *** Replace slightly broken atoi/atol with BSD versions [DP]
- *** Added endian.h from BSD [DP]
- DC  Port of OggVorbis "Tremor" lib [DP]
- DC  Added leak checker for PVR malloc [DP]
- DC  NULL parameters are allowed to timer_ms_gettime now [DP]
- *** malloc_debug is now platform independent [DP]
- DC  libdcutils has been removed; most pieces moved elsewhere in KOS [DP]
- DC  Adventure example should compile more places now [DP]
- DC  Added mat_trans_single3() [DP]
- DC  Calling pvr_list_begin() when a list is opened closes the old one first [DP]
- DC  Added wav2adpcm utility [Bero, DP]
- DC  ADPCM samples support in sfxmgr [DP]
- DC  Added 2D PVR util library Parallax [DP]
- DC  Added C++ scene graph lib Tsunami [DP]
- DC  Added frame pointer macros [DP]
- DC  Ability to hook into "double faults" [DP]
- DC  Stack tracing functions for FRAME_POINTERS mode [DP]
- *** Assert hooking capabilities, stack trace from assert when possible [DP]
- *** libtga wasn't setting format of kimg's (thanks dvanbler)
- DC  snd_init() called more than once would freeze (thanks anonymous)
- DC  Fixed "dunno" field in cdrom TOC structure (thanks bjonte)
- DC  Added GDB stub support [Jason Fritcher == JKF]
- DC  Fix for libconio to remove some duplicated code [Jim Ursetto == JU]
- DC  Timing test code for tremor and sndoggvorbis, and race condition fix
      for quick starting/stopping of songs. [DP]
- DC  Fix for loading 3-channel PNGs into an alpha-enabled buffer [DP]
- DC  Fix in libconio for incorrect output target when using dc-load-ip
      console [DP]
- GBA Code sync with Gil Megidish's GBA code base [Gil Megidish == GM]
- DC  Updates to the AICA driver due to Yamato's new docs [DP]
- DC  PVR texture DMA support [Roger Cattermole == RC]
- DC  sfxmgr changed to allow unlimited sound effects [DP]
- *** fread() fix if nmemb < size [GM]
- *** new and delete in libk++ accept size_ instead of unsigned int [GM]
- *** Fixed many warnings in the build [GM]
- DC  Disable IRQs during screen shots to make sure you get a coherent pic [DP]
- DC  Added plasma example [DP]
- DC  Some efficiency fixes in the thread scheduler [DP]
- DC  Some init/shutdown cleanups for libconio [DP]
- DC  Added libkosh, a library version of Kosh for debug purposes [DP]
- DC  Generic mode system for vid_set_mode, fixed centering on VGA [DP]
- DC  Cleaned up MMU support, added some MMU examples [DP]
- DC  Maple only queries U0 for each port for attach/detach now [DP]
- DC  Added a rudimentary (and slightly abusive :) stat call to fs_vmu [DP]
- DC  Added spu_master_mixer() to control the master mixer [DP]
- DC  Added irq_get_handler and irq_get_global_handler [DP]
- PS2 Initial skeleton port for PS2 RTE added [DP]
- DC  Misc cleanup in dcplib [DP]
- DC  Added INIT_QUIET and INIT_NO_DCLOAD for "production" versions [DP]
- *** Fix a startup error when booting the original kernel thread [DP]
- *** dbglog short-circuits to dbgio_printk to save some time [DP]
- DC  Fixed up SYSCALL macro to be much less broken [DP]
- *** Added sem_trywait() as a non-blocking semaphore wait [Bero]
- *** Added thd_wait() to wait for thread death [DP]
- *** Double-advancing gettimeofday() fixed [DP]
- DC  Added some consts in the oggvorbis libs [DP]
- DC  Added a VQ encoder and a VQ example [GM]
- DC  Added SDL port from Bero and Lawrence Sebald [Lawrence Sebald == LS]

KallistiOS version 1.1.8 ------------------------------------------------
- DC  Fixed two more memory free problems in OggVorbis [Dan Potter == DP]
- DC  Fixed GL_POINTS [Paul Boese == PB]
- DC  Fixed problem with setting gl_cur_texture to gl_null_texture in
      glmisc.c [PB]
- DC  Added "navi" subarch for my hardware experimenting work [DP]
- DC  Fixed a bug in the cdrom drive which caused a lockup if the tray
      was open during startup, and fixes compatability with navi [DP]
- DC  Added GL_POLYGON and GL_QUAD_STRIP to gldraw.c. Thanks to Jesse Ruffin :)
      [Jesse Ruffin == JR]
- DC  Various fs_vmu fixes: properly zero out directory entries on unlink,
      confine user writes to user data area, file blocks no longer cleared
      on unlink, allow writing to existing files, implement seek/mmap,
      O_TRUNC support, case-insensitive port in path, improved error
      checking and various cleanups [Jim Ursetto = JU]
- DC  New "public" maple API (maple_enum_*) [DP]
- DC  Prevent FPU exception on underflow (DN=1, thanks Andrew!) [DP]
- DC  Fix for non-square PNG loading [Fredrik Ehnbom = FE]
- DC  Fixed race condition in snd_stream for multi-threaded operation [DP]
- DC  Stack underrun check for threads, fixed thread pwd inheritance [DP]
- *** Changed gentexfont to include more glyphs by default [DP]
- DC  lwIP support for dcload-ip [Andrew Kieschnick == ADK]
- DC  irq.h fixes and generic trapa handler support [Jason Fritcher == JKF]
- DC  Added vmu_parse function [JU]
- DC  Changed snd_stream callback to return an actual "got" value,
      added a timeout for kick_aica(), added checks so that re-initting
      the snd_stream lib won't stop currently running sound effects [DP]
- DC  Added seamless looping support for OggVorbis [DP]
- DC  Fix for "adventure" conio example under Cygwin [DP]
- *** Added "imageload" library [Jeffrey McBeth == JBM]
- DC  Added arch_exec_at [Scott Robinson == SR]
- *** Fix ar->$(KOS_AR) in lwIP Makefile [JKF]
- DC  Fix potential crash in vmu_close [JU]
- DC  New more generic sound driver [DP]
- *** Ported strtod and strtoul from BSD [DP]
- *** Include stddef.h in stdlib.h for offsetof() among other things [DP]
- *** Port of the Lua scripting language [DP]
- *** Added rule for 'S' (preprocessed assembly) to 'o' [DP]
- DC  Trilinears Z-Clipper for GL_TRIANGLES. Includes demo [Marc Hall MH]
- DC  Added Experimental volume modifier stuff to pvr and kgl [PB]
- *** Added PCX loader for libimageload [JBM]
- *** Fix for BMP loader in libimageload [JBM]
- DC  Japanese support for biosfont [Kazuaki Matsumoto == KM] [DP]
- DC  Fix a NEARZ clipper bug in KGL. Misc Fixes. Added storage for
      frustum atttributes [PB]
- DC  Change for fs_dcload that lets console output keep going out over
      dcload-ip up to the last second [DP]
- DC  Removed some assert_msg's in KGL to make threaded programming with
      these more usable [DP]
- DC  Replaced cheesoid sound allocator with a real best-fit one [DP]
- DC  Fixed error handling for out-of-texture-ram so it doesn't crash
      the entire program [DP]
- DC  Left out some "break" statements in pvr_texture.c (thanks Mike Z) [DP]
- DC  Palette format support for PVR (thanks Mike Z) [DP]
- *** Fixed dirent_t to also be "struct dirent" [Christian Groessler == CG]
- DC  Added "volatile" in counters in maple [CG]
- DC  Fix for CDDA volume/panning [Fredrik Ehnbom == FE]
- DC  Improvement for randnum() [JU]
- DC  Added FASTSOUNDLIB to libmodplug flags [JU]
- DC  Enable OCRAM on init with INIT_OCRAM init flags [JKF]
- DC  Allow exceptions during G2 operations to catch bugs [DP]
- DC  Added arch_get_ret_addr to allow getting the return address from a func [DP]
- DC  Added channel inits on init for SPU, to fix CDDA [DP]
- DC  Changed spu_cdda_* functions to be a bit more sane [DP]
- DC  Added CDDA example [DP]
- DC  Added MAPLE_FOREACH macros [DP]
- DC  Changed libdcutils funcs to take pvr_ptr_t's instead of uint32's [DP]
- DC  Removed deprecated TA compat API, and kos_init_all/kos_shutdown_all [DP]
- DC  Removed deprecated init macros (BASIC_ENABLE, etc) [DP]
- DC  Updated libjpeg and libpng to use pvr_ptr_t's and PVR API [DP]
- DC  Updated Kosh to PVR API [DP]
- DC  Removed GhettoPlay/S3M in favor of GhettoPlay/Vorbis for a sample [DP]
- DC  Changed VMU low-level API to use maple_device_t [DP]
- DC  vmu_icon_init in libdcutils changed to vmu_set_icon, and it now
      sets the icon on all VMUs [DP]
- DC  readdir support in fs_vmu for "/vmu" [CG]
- *** Added strtol and _strupr [Brian Peek == BP]
- DC  Fixed theme support in libconio, and other misc cleanup [DP]
- DC  Moved Kosh to "conio" and ported to libconio [DP]
- DC  Added serial console support for libconio [DP]
- DC  Updated liboggvorbisplay to 1.0 Final [Thorsten Titze == TT]

KallistiOS version 1.1.7 ------------------------------------------------
- DC  Fix for 320x240 on NTSC TVs [Jim Ursetto == JU]
- DC  Fix for readdir in fs_dcload [Bero]
- DC  Fix for libjpeg's jpeg_to_texture [Bero]
- *** Added assert(), assert_msg(), and assert.h [Dan Potter == DP]
- *** Fix for feof()/ferror() in stdio.c [Brian Peek == BP]
- DC  Added gluLookAt() [James Susinno == JS]
- DC  New PVR API added to replace old "ta" API [DP]
- *** New network API started [DP]
- DC  Experimental SPU DMA usage has been removed for now (it was causing
      issues with CD access) [DP]
- DC  Added DC port of PLIB [Peter Hatch == PH]
- DC  Fixed IRQ bug for non-threaded mode [Roger Cattermole == RC]
- *** Added support for PWD in non-threaded mode [DP]
- DC  Ported 2ndmix example to PVR API [DP]
- *** Added conditional compilation for addons and examples in C++ [DP]
- DC  Added pauses to some more libdream examples [DP]
- *** Port of libbz2 [Sven Oliver Moll == SOM]
- *** Changed around build process a bit check the README for
      more info [DP]
- *** Libc split into seperate directory [DP]
- DC  Renamed current g2_* stuff to asic_* [DP]
- DC  Added new "g2bus" module to handle writing to the G2 bus [DP]
- DC  Fixed default AICA program [RC]
- DC  New streaming sound / sound effects library [DP]
- *** Changed dbgio_printf -> printf and added NDEBUG in thread.c [DP]
- DC  Fixed include arm/aica_cmd_iface.h to mp3/arm/aica_cmd_iface.h [BP]
- *** Cygwin fix for genromfs [Florian Schulze == FS]
- DC  Rockridge fix for iso9660 [Takayama Fumihiko == TF]
- DC  Port of XMMS' modplug [FS]
- DC  Fix for store queue alignment [Andrew Kieschnick == ADK]
- DC  Fix for stricmp/strnicmp problem with differnet length strings [ADK]
- DC  More complete AICA driver [FS]
- DC  atexit() support [FS]
- DC  Circular buffering support for sndstream [FS]
- *** Added atol() to libc [BP]
- *** Added IRQ safety primitives to spinlock and malloc [DP]
- DC  Double fault patches for better error handling [DP]
- DC  Fixes for moved files, and texture allocation support for
      libpng [Jeffrey McBeth == JBM]
- DC  New maple system [DP]
- DC  Added first working version of Table Fog to PVR API stubs [Paul Boese PB]
- DC  Ported KGL to new PVR API and Merged in Benoit Millers Changes.
      NOTE: glRotatef now takes angle in degrees; Maths in gltrans is
      completely rewritten and should be more GL compatible. [PB]
- DC  Created new KGL demo/example subdirectory /examples/dreamcast/kgl.
      moved gl under kgl/basic/gl. Added Benoit Millers nehe02-nehe09
      ports to kgl/nehe and texenv example under /kgl/basic. [PB]
- DC  A couple of OggVorbis fixes [Thorsten Titze == TT]
- DC  Added _start to work with sh-sega-dreamcast GCC / GCC 3.0.4 [DP]
- DC  Added timer_ms_gettime() for the number of milliseconds since startup [DP]
- *** Added gettimeofday(), mktime(), and localtime_r(); fixed time() [DP]
- DC  Fixed clash with newlib's time.h [DP]
- DC  Fixed rtc_unix_secs() [DP]
- DC  Added clock example [DP]
- DC  Added pvr_set_bg_color to glClearColor in glmisc.c [PB]
- DC  Added texture wrapping enums and functionality to KGL. Cleaned up 
      glTexParameteri in gltex.c in the process. [PB]
- DC  Added texwrap example [PB]
- DC  Fixed some locking issues, added real date/time support to fs_vmu [DP]
- DC  Added vmu_pkg_* for handling VMU file headers [DP]
- DC  Added fs_vmu unlink() [BP]
- DC  Added glKosMatrixIdent() and glKosMatrixApply() to allow for optimized
      direct-rendering access, along with mat_trans_single() [DP]
- DC  added tunnel demo [PB]
- *** Newlib libm now included with main distro (though still a bit DC specific) [DP]
- DC  Created KGL programming reference in LyX [PB]
- *** Implement fputc and O_TRUNC [JU]
- DC  Fix for modesize.y % 32 != 0 [DP]
- DC  Fix for compilation on NetBSD [Christian Groessler = CG]
- DC  Patch to make adding builtins easier in Kosh [SOM]
- *** Updated zlib [JBM]
- DC  Fix glViewport to correct location of origin [PB]
- DC  Added glScissor function to KGL [PB]
- DC  Added scissor test under kgl basic examples [PB]
- DC  Queueing support for OggVorbis and snd_stream [DP]
- *** clock_t/clock()/BUFSIZ for ANSI C [JBM]
- DC  KGL now uses pvr_poly_cxt_t structs and pvr_poly_compile. Also
      resolves some blending problems [PB]
- DC  Added basic UBC support [DP]
- DC  Configurable exit support (return, menu, reboot) [DP]
- DC  KGL now uses pvr_poly_cxt_t structs and pvr_poly_compile. Also
      resolves some blending problems [PB]
- DC  Enabled glDepthFunc() and remapped GL to PVR depth functions so they
      work as expected (the ones I could test anyway) [PB]
- DC  PNG loader cleanups, removed O'Reilly code [JBM]
- DC  Fixed vid_empty() to make it actually start at VRAM base [DP]
- DC  Changed init process and threading (see release notes) [DP]
- DC  Added screen-shot facility [DP]
- *** Added png_write [JBM]
- *** Added timeout-capable semaphores [DP]
- DC  Fixed a bug in syscall.c which probably didn't affect anything yet [DP]
- *** New (slightly kludgy for now) port of lwIP to KOS NetCore API [DP]
- DC  Fixed memory leak in libjpeg (thanks Jacob) [DP]
- *** Fixed a big in gettimeofday() [CG]
- *** malloc_debug added calloc() [DP]
- DC  Double-free fix for fs_dcload [DP/BP]
- DC  Cleaned up a massive memory leak in liboggvorbisplay [DP]
- *** Added readdir support for fs_romdisk [DP]
- DC  Now use assert/assert_mesg to carp on user programming errors in KGL [PB]
- DC  Use direct render API in gldraw to submit vertices to TA [PB]
- *** Platform independent image functions [DP]
- *** Added vcheck.py script for CVS assistance [DP]
- *** Split pcx functions into libpcx, adapted to PII funcs [DP]
- *** Split tga functions into libtga, adapted to PII funcs [DP]
- DC  Added POSIX-style arch_exec() function [DP]
- *** Fix for zlib compression [JU]
- DC  Added kgl benchmarks directory with trimark and quadmark [PB]
- DC  Fix for 320x240 on VGA box [CG/DP]
- DC  Updated examples to latest API changes [DP]
- DC  Added controller button combo callback [DP]
- DC  Fix all examples makefiles to use $KOS_STRIP environment variable [PB]
- *** Added beginnings of libk++ (tiny libstdc++ replacement) [Gil Megidish/DP]
- DC  Adapted C++ examples to use libk++ [DP]
- DC  Added libconio (adapted from Kosh) for "console" programs [DP]
- DC  Added wump and adventure examples for libconio [DP]

KallistiOS version 1.1.6 ------------------------------------------------
- DC  Fix for using resolutions other than 640x480 with TA [David Kuder == DCG]
- *** New version of dlmalloc with better thread safety [Dan Potter == DP]
- *** Misc fixes for the build process [Benoit Miller == BM]
- *** C++ compilation rules for cpp->o [BM]
- *** Beginnings of BSD-style C++ header support [DP]
- DC  G2 DMA locking for maple and SPU DMA [DP]
- DC  Fixes to SPU DMA to make it behave with maple and other DMAs [DP]
- DC  Default to initting SPU DMA during initall() [DP]
- *** ANSI stdio wrappers [Tobias Gloth == TG]
- DC  Experimental SPU DMU usage in mp3lib [DP]
- DC  GCC 2.x compliance fixes (var decls inside functions) [BM]
- *** Import of BSD ctype [BM *]
- *** wchar support and other ANSI fixes [BM]
- *** Lots of headers now have DECLS for C++, more on the way [DP]
- DC  Added -fno-exceptions to the default CPPFLAGS in environ.* [DP]
- *** Added C++ low-level memory primitives (__builtin_new, etc) [DP]
- DC  Added a C++ version of gltest to the examples tree [DP]
- DC  Added new 768xXXX modes [DCG]
- *** Misc source cleanups [DP]
- DC  ctor/dtor support [DP]
- *** zlib port [Jeffrey McBeth == JBM]
- DC  pnglib port plus DC texture loader [JBM]
- DC  Added cdrom_get_status() to check GD-Rom drive status [DP]
- DC  Updated liboggvorbis from RC3 [Thorsten Titze]
- *** Fixed a problem with VFS when threads weren't enabled [DP]
- DC  Cleaned up cruft in DC spinlock.h [DP]
- DC  Pre-bundled libm.a updated to latest newlib release [DP]

* Xavier Bouchoux sent this to me earlier, but I was too lazy to get 
  it integrated ^_^;

KallistiOS version 1.1.5 ------------------------------------------------
- DC  Fix for spu_write_wait() -- it was doing the opposite of what it
      was supposed to! (oops!) [Anders Clerwall == Scav]
- DC  New matrix.s [Mathieu Legris] -- note that there are now some
      alignment constraints on the usage of the matrix functions.. please
      see matrix.s for the comments if you use it!
- DC  KGL support for the new matrix.s [Andrew Kieschnick == ADK]
- DC  New video.c / video.h with a real mode table, and support for
      some PAL modes and 256x256! 800x608 is apparently still
      a bit broken in this one, so if anyone is actually using it you
      might have to tweak just a bit. [Scav]
- DC  Fixed a potential race condition in kernel/main.c [Dan Potter == DP]
- *** Added some new libc stuff from BSD (abs, labs, strdup, qsort, and some
      misc is/to upper/lower funcs)
- DC  Added an early implementation of alpha-blended polys to KGL [DP]
- *** Semaphores and condition variables weren't getting initialized [DP]
- DC  First pass at SPU DMA [DP]
- *** New isdigit() and [DC] a biosfont patch [Warren Moore]
- DC  New more general twiddle function [Vincent Penne == VP]
- DC  TA frame counter, paletted texture type defines [VP]
- *** abort() function [VP/DP]
- *** atoi, dtoa, and floating point printf support [VP]
- DC  randnum() fix [VP]
- DC  Ported over the simple serial console from KOS-MMU [DP]
- DC  Inline TA commit functions [VP]
- DC  Updated gl example to show translucency [DP]
- *** Added architecture checks in header files
- *** Fixed some prototype errors with index, rindex [?]
- DC  Fixed turning off vertical smoothing on VGA [DP]
- DC  Added polygon culling controls for KGL [ADK]
- DC  Ported up MMU functions from KOS-MMU [DP]
- DC  Imported liboggvorbisplay and GhettoPlay adapted to OGG [Thorsten Titze]

KallistiOS version 1.1.4 ------------------------------------------------
- DC  Store queue support [Andrew Kieschnick == ADK]
- DC  New and improved matrix math routines [ADK]
- DC  Patch to KGL to clip polygons with bad w value [ADK]
- DC  Patch for serial I/O that does not reset the baud rate if it's already
      been set. This should eliminate a lot of problems with mismatched
      serial baud in dcload [ADK]
- DC  Patch to fix GL_QUADS constant [Greg Cooksey]
- DC  ftan support, plus KGL usage [Andrew Kieschnick == ADK]
- DC  Fix for iso_ioctl
- DC  New spinlock code works a lot better [ADK]
- DC  Fixed a bug where thd_enabled wasn't being set to 1 [ADK]
- DC  Render done seems to work again, so it's now re-enabled [ADK]
- DC  Added 'menu' command in KOSH to exit to the DC menus [Dan Potter == DP]
- DC  Added rtc_unix_secs() support for reading the current date/time [DP]
- DC  Fixed some problems in VMU writing related to timing and a mystery
      command (thanks to an oooold message from Nagra) and also did some
      fixes to fs_vmu. Please see the notes in README, this code still
      isn't really stable. [DP]
- DC  Added a new 'hello' example in the DC examples tree which shows
      a basic project skeleton which you can start with. [DP]

KallistiOS version 1.1.3 ------------------------------------------------
- DC  Included initial test version of KallistiGL (addons/libgl)
- *** strstr.c was not getting included in the compile for some reason [Regex]
- DC  Fixed bug that could cause fs_iso9660 to run out of handles [James Surine]
- DC  New inline math functions [Andrew Kieschnick]
- DC  Added (currently non-working) MPGLIB sources
- DC  Some more Makefile build fixes
- DC  Still yet more joy of ISO fncompare() fixes [Brian Peek]
- DC  Changed TA far Z clipping plane to be out even farther
- DC  Fixes for matrix.s to make it use W properly [Andrew Kieschnick]
- DC  libos wasn't being built; fixed

KallistiOS version 1.1.2 ------------------------------------------------
- DC  Fixed over-initialization of VRAM (sorry, didn't realize it was wrong)
- DC  Fixed some dc-load init/shutdown bugs (adk)
- *** Fixed a bug in the global Makefiles that made it not process
      the "SUBDIRS" entries normally
- DC  PVR functionality ("ta" module) has been seperated into its own
      subdir, where it will eventually gain more functionality and be
      reorganized.
- DC  As part of the above reorganization, TA initialization is no longer
      done automatically; you can do this by adding TA_ENABLE to the
      call to kos_init_all (see below).
- DC  vid_set_mode() has been simplified to take only two arguments; a
      new function vid_set_mode_and_cable() is now there if you want to
      change cable types manually for some reason.
- DC  kos_init_all() has changed to a more flexible format; PLEASE LOOK
      at the examples to see how!
- DC  Fixed a bug in fs_dcload that made a listing of /pc not work

KallistiOS version 1.1.1 ------------------------------------------------
- *** Per-thread path functions are back now, if threads are enabled.
- DC  dc-load console and file system support is now integrated
- DC  The startup procedure has changed (i.e., how you initialize the
      library mode). Please see the dreamcast "2ndmix" example for
      details.
- DC  MP3 player lib and S3M player lib have been integrated (though the
      S3M lib is a bit incomplete as of yet)
- DC  JPEG lib, PVR and other utils from DC Tonic's libdemocd now included
- DC  More OS-mode support
- DC  Semaphore and Condition Variable sync primitives re-imported from KOS-MMU
- DC  Updated the FAQ for 1.1.x
- DC  Included the Newlib libm in binary distributions
- DC  Added functions for DC's "hidden" sin/cos/sqrt functions (dc/fmath.h)
- DC  Added CDDA functionality in the cdrom and spu modules; also added a
      new "cdrom_spin_down" call to manually spin down the CD (thanks maiwe!).
- DC  Fixed a problem where some things (hardware, irq) might be de-initted
      even though they weren't initted (and cause strange problems)
- DC  Libdream examples now ported and included in the DC examples dir

KallistiOS version 1.1.0 ------------------------------------------------
- Complete rework of the entire OS structure. Many of the incorporated
  changes and cleanups were ported over from the ill-fated KOS-MMU project.
- KallistiOS is now primarily built as a library. It has always worked this
  way in the past, but now the focus is on the library version rather than
  the OS version. All non-library-essential items have been moved out of the
  kernel tree and are currently somewhat broken. These will be fixed over
  the next couple of releases.
- KOS goes multi-platform! All architecture specific pieces are now moved
  into the 'kernel/arch' directory.
- A new GBA port was added for Nintendo(tm)'s Gameboy Advance(tm). Not much
  there yet for GBA, but that will change shortly.
- Everything is now compiled with -Wall and all warnings as of GCC-20010507
  are cleaned up.
- New threading module, including proper condition variables, semaphores, and
  microkernel-style message passing.
- Tiny PCX loading function now included for GBA
- New FS call fs_mmap() added to support using ROM files as const arrays.
- arch_exit() and arch_reboot() added for escape-hatch functionality (if
  your program is hosed and you know it, call one of these to bail in
  a nice manner)
- Threading should no longer be essential in any part of the system that
  does not explicitly depend on it (e.g., semaphores).
- Mutexes have been renamed to spinlocks (which is what they were anyway)
  and moved into a header file for inlining.
- Serial I/O on DC now times out after a second or so and disables itself
- Lots more that I can't remember!

KallistiOS version 1.0.0 ------------------------------------------------
- Turn off Y scaling on VGA box
- Added render-done interrupt support, to support lower frame rates
- Added rudimentary render-to-texture support
- Added semaphore and mailbox primitives to thread ABI
- Added thd_schedule_next, which the TA routines now use to reduce
  TA thread overhead to almost nothing
- Added fs_getwd() and fs->getwd()
- fs_romdisk is now case-insensitive
- init.klf now takes an optional command line parameter of the rc.boot name
- Added serial ABI (thanks Brian Peek)
- fs_iso9660 has improved cacheing now; a seperate data and inode cache is
  kept so that directory info doesn't have to be re-fetched after loading
  a large file. Also increased the number of cache buffers and got rid of
  the moronic init_percd() on every file open behavior.
- Fixed bug in fs_iso9660 that caused Rockridge file names to be
  case sensitive
- Added sprintf in libc
- Kludged around a bug in maple (for now) that would trash thread structures
  at random (buffer overrun in DMA)
- Added malloc() debugger malloc_debug.c in the 'mm' directory. See that
  file for usage notes.
- Fixed some (probably irrelevant) memory leaks in startup/shutdown code
  for KOS
- Added an extra serial_init() call in startup/main.c so that serial output
  works from the very beginning.
- SVCMPX now fails (correctly) if it hasn't been initialized yet.
- Fix for Gameshark and other 3rd party VMUs that don't properly return
  an error code when trying to write to the VMU LCD screen (thanks Andrew
  Kieschnick)

KallistiOS version 0.90 -------------------------------------------------
- Fixed a bug in svcmpx that would return a fake service if you didn't have
  the named service (thanks to Andrew Kieschnick for finding that one).
- Fixed build on Cygwin for genromfs (thanks Florian Schulze and Brian Peek)
- Fixed bug in bin2o on the cmdline help (I dunno why it worked at all!)
- Updated "goals.txt" document to reflect the changes since before KOS
  was started. It was still amazingly on-track but there are a few things
  that have changed since then.
- Inclusion of new "configure" utility for setting up compilation defaults.
- Added new G2 bus module that handles G2 interrupts; will add more later
- Fixed a bug in TA that caused problems with large scenes (thanks
  Andrew K. again)
- Updated TA to use new G2 module
- Fixed some build things that I found when switching to BSD (this ought
  to help everyone building).
- Mutexes are now inactive inside interrupts, to avoid a double-fault
  that causes a reset of the DC. One result of this is...
- BSOD is back (finally), though it only works over the serial port as a
  general rule.
- Imported BSD's sys/queue.h as bsd/queue.h
- New thread scheduler that uses priority queues and an idle task (so
  the real thd_sleep ought to work again).
- Fix for trailing '.' in fs_iso9660: some CD burning software adds a dot
  if there isn't one elsewhere in the filename (thanks Brian Peek).
- Added semaphores to the thread manager.
- Added mboxes to the thread manager.
- Added labels and pwds for threads; labels will be for eventual process
  listing facilities. VFS uses pwd to resolve relative paths (somewhat).
  Kosh also now supports this facility.
- Imported lwIP BSD-licensed TCP/IP stack; it's still pretty broken
- Fixes to the RockRidge code (AndrewK)
- load_and_fork() now takes argc,argv also
- Added new userland utility, "init" (see docs/FAQ).
- fs_romdisk now supports directories
- Although this doesn't really affect anything in the code, the naming
  convention for KOS executables is now to make their extension '.klf'
  instead of '.elf'. 
- Default 'zclip' in TA module is now 0.01

KallistiOS version 0.80 -------------------------------------------------
- Changed the licensing terms to full BSD-style.
- Fixed the "VGA tearing" bug for real this time (scanline int); TA should
  now be active and work in all video modes (in theory). 800x608 remains
  "experimental".
- Fixed the "tile 0 bug", which was really stupid: it was just clipping
  tile 0 as I had requested in the polygon header.
- Added new bin2o util that converts a binary into an object file for
  inclusion in the link process.
- Tightened thread locking code and irq disable code: there are still some
  situations where two threads can enter a critical section, but doing it
  "right" put an incredible load on the CPU. Thus, I just tried to minimize
  the possibility.
- Fixed a bug in 320x240 setup for RGB cables and VGA offset for 640x480 so
  it's the same as official games.
- Fixed frame buffer size in 640x480; this prevents the first bits of your
  texture from showing up on the bottom of the screen.
- Added a new ta_set_buffer_config() so that you can set the TA parameters
  like active lists and buffer sizes before calling init.
- Integrated Andrew Kieschnick's RockRidge NM extension patches for the
  ISO9660 file system.
- Added new romdisk file system. This is intended as a general replacement
  for the old "builtin" file system, though builtin still has its uses too.
- Added conio->check_getch() in Kosh and added support for that to
  Streamtest; also added conio->freeze() and conio->thaw() so that you
  can run compliant apps from Kosh now. This is just a temporary hack
  and will be changed later, but it works for now.
- New upstream version of Streamtest code (from our game).
- Increased default thread stack space again, this time to 64k. Tune to
  your liking in include/kallisti/config.h.
- Simplistic TA texture allocation system; names of texture_* funcs have
  changed; please see ta.c or ta.h.
- BIOS font API now supports opaque or not; the bfont_* functions have
  changed; please see biosfont.c or biosfont.h.
- Added default disclaimer screen for use in bootable KOS applications.
- Included new version of 2ndmix intro/demo and the original song with
  the romdisk image.
- Added the beginnings of a FAQ.

KallistiOS version 0.7
- Added some "const" keywords here and there, and made an effort to remove
  most of the in-block stack variables and in-var initializations. There are
  still a few in userland programs (jam notably).
- Most things now work with default optimiztions (-O1 plus some other things).
  -O2 seems to work for that matter, but I'm not pushing it yet =)
- Increased max simultaneous open files on /bi to 8
- Fixed iso_seek() for /cd
- Added some thread safety stuff in /pc (serconsole) and fixed some memory
  leaks in there. It still doesn't work right with threads. Some reciprocal
  fixes in konsole.
- Added some DMA-safety things in maple (timeouts, etc)
- Added mutex init in maple (oops!!)
- TA has a completely new buffer allocator now that takes texture memory into
  account. Also texture_map() has changed, all texture offsets should start
  at zero and will be mapped by TA automatically.
- TA now does almost everything relevant inside its interrupt for improved
  rendering response time. It also resets after each frame in case the last
  one didn't finish (this is an improvement from locking up the TA =). The
  next version ought to properly wait until the render is done.
- Moved several config options (like thread stack size, etc) into config.h
- Fixed a lot of pointer/heap corruption bugs and memory leaks in elf.c
- Fixed memory leak in process.c (ps_load_and_fork wasn't freeing the image)
- Added 'LIBS' var in userland's Makefile.prefab
- Cleaned up a few things in JAM (including removing "required" mouse support)
- Changed Kosh's \r and \n handling to be more Unix-like
- Removed a few debug lines in libk
- New userland program "streamtest" demonstrates the beta streaming AICA
  driver, and includes a DC/KOS port of XingMP3 from FreeAmp. Note that
  compiling this program from scratch requires the ARM compiler and a
  working libm from newlib.

KallistiOS version 0.6 --------------------------------------------------
- First release

Get latest updates about Open Source Projects, Conferences and News.

Sign up for the SourceForge newsletter:





No, thanks