September 4th, 2008· Improved main controller image display (now 2.6x faster)
· Improved Controller Settings window image display (now 3.3x faster)
· Improved profile file size (blank profile down from 1416 bytes to 146 bytes)
· Improved subwindow graphics scanline access (faster display)
· Improved sub-window handling and memory usage
· Improved sub-window display speed and efficiency
· Improved settings window design
· Improved dialog window design
· Improved boot speed
· Improved profile reading speed
· Improved invalid profile detection
· Improved setselector assigning by removing buddy copying and clearing
· Improved set selector and auto-assign none icons
· Improved processing of non-sequence assignments
· Improved mouse speed internal storage and handling
· Improved pause duration (increased from 2.50 second to 10 minutes)
· Improved pause slot parsing
· Improved pause time entry (replaced slider with comboboxes)
· Improved profile bad value message displays
· Improved gradient accuracy
· Improved about, legal and license text
· Added Profile Copy and Paste
· Added Check For Update
· Added OS architecture (32/64bit) and service pack info to Windows version info
· Added Windows 2000 boot message stating intention to remove support in the future
· Added mouse button 4, 5 and mouse wheel tilting assignments
· Added repeating of final stage in sequences while button is held
· Added default mouse speed to values settings (thanks to jinxguardian)
· Added Restore Defaults button to settings value page
· Added Okay button to Settings window
· Added windows game controller control panel button icon
· Added displayed name as original Save As filename instead of "New Profile"
· Fixed a bug where Xpadder could fail to appear when first run (thanks to megadeth502 and Devin)
· Fixed a bug where logging off/shutting down Windows while subwindows were open caused Xpadder to stop responding
· Fixed a bug where dialog window hid behind other windows during installation
· Fixed a bug where main window hid behind other windows after installation
· Fixed a bug where filenames with $ or # caused problems in dialog windows
· Fixed a bug where loading a profile ignored setselectors 4 to 8 (thanks to xtertristl)
· Fixed a bug where profiles with assignments with more than 255 slots did not open correctly (thanks to mstraughan86)
· Fixed a bug where repeatedly opening and closing Controller Properties window very fast can cause an error
· Fixed a bug where first key/combo in a sequence is down for 0.01s more than it should be
· Fixed a bug where Set Selection occurred instantly instead of after sequence had finished
· Fixed a bug where One-way set selecting changed set instantly instead of on button release (thanks to Evilalan and johngro)
· Fixed a bug where Set Selector could not be cleared from assignment button popup menu (thanks to Cable)
· Fixed a bug where sequence status was not set for buttons with no slots
· Fixed a bug where a sequence in the destination set of a While Held set selector repeated first slot instead of playing sequence
· Fixed a bug where a sequence in the destination set of a While Held set selector did not return to previous set
· Fixed a bug where filenames including did not display correctly (thanks to jinxguardian)
· Fixed a bug where clicking the ends of buttons with long assignment names did not open assignment window
· Fixed a bug where controller buttons that overlapped could not be clicked in overlap area
· Fixed a bug where displaying names was not perfectly centered on button
· Fixed a bug where set selector info on assignment button did not stretch with long assignment name
· Fixed a bug where assignments in deadzone or active did not show yellow assignment window indicator
· Fixed a bug where window positions were not remembered across multiple monitors (thanks to Michael)
· Fixed a bug where assignments for non-existent controller file buttons still emulated (thanks to Sametz)
· Fixed a bug where emulating mouse wheel up then down too then release up caused mouse wheel emulation to stop
· Fixed a bug where :F= could appear in translation file (thanks to CyberMSX)
· Fixed a bug where translation file creation could repeat words
· Fixed a bug where some installation window buttons were not translated
· Fixed a bug where failing to open INI style controller and profile files did not show initial "open error" message
· Fixed a bug where adding a new controller when list is full caused listsize to increase by 1
· Fixed a bug where App Paths registry entry ignored "Associate files" option
July 10th, 2008· Improved set capacity (increased from 4 to 8 sets)
· Improved set handling (infinite sets a big step closer)
· Improved assignment right-click set menu (split into set submenus)
· Improved SetSelector indicators (replaced dots with set number and method icon)
· Improved window display positioning
· Improved window position saving
· Improved remember window positions option (on by default - centred if disabled)
· Improved closing of all windows (all windows close if re-opened - they now toggle)
· Improved global settings options layout (expanded window size and removed scrollbox)
· Improved timing accuracy and loop counting
· Improved component creation in some areas
· Improved processing of scan animation display (when no controllers are connected at startup)
· Improved keyboard test timing when emulating a sequence
· Improved controller properties layout
· Improved handling of dialog text formatting
· Improved default path determination
· Improved image text writing
· Added yellow highlight to Controller and Profile buttons whenever changes have been made and need saving
· Added type and battery/power information for Xbox 360 compatible controllers to properties window
· Added Profile Settings window
· Added KeyTapTime global and profile options
· Added AllowEmulatedKeys checkbox to keyboard test
· Added first run dialogs (welcome and program location, user file location, add associations)
· Added Associations option
· Added bolding of toggled global options (so you know what options have changed)
· Fixed a bug where assigning onto a set selector via advanced assignment window caused error (thanks to tbd2007)
· Fixed a bug where re-running with different path casing triggered different-location boot error (thanks to Thraka)
· Fixed a bug where programs launching Xpadder using "xpadder.exe" fail boot name check (thanks to Thraka)
· Fixed a bug where custom system font dpi size caused error (thanks to scotsummers)
· Fixed a bug where custom system font dpi altered window layouts
· Fixed a bug where custom system font dpi cropped all checkboxes
· Fixed a bug where custom system font dpi affected some fonts (Tahoma 8 is now used 100% throughout)
· Fixed a bug where assigning to a one-way set selector copied assignment to setbuddy
· Fixed a bug where keyboard settings checkboxes were not translatable
· Fixed a bug where Windows 2000 showed icons with magenta background
· Fixed a bug where holding shift/ctrl/alt and closing assignment window caused thread error (thanks to generic.imitation)
· Fixed a bug where Clear Advanced assignments de-focused advanced assignment window preventing keypresses
· Fixed a bug where clicking space to right of global options toggled the checkbox
· Fixed a bug where pressing Enter or Space in Advanced Assignments window after pressing a button caused button to repress
· Fixed a bug where flickering could occur on multi-core CPUs
· Fixed a bug where Inserting a slot caused flicker and highlighting of incorrect slot
· Fixed a bug where combinations with Windows Logo keys did not work (thanks to Christian)
· Fixed a bug where some dialog windows did not use bold text for details
· Fixed a bug where changing background colours while scan animation was running used an old workaround
· Fixed a bug where AssignmentPopUpMenu Clear option and wheel clicking was possible even if assignment was already empty
· Fixed a bug where Keyboard tab text was not translated (thanks to Ivan T)
· Fixed a bug where Controller Properties text could be scrolled via horizontal mouse wheel (thanks to SGTCableDog)
· Fixed a bug where multiple buttons could be auto-snapped to stick center in controller settings window
· Fixed a bug where Controller help did not show information about the Controller menu (only the tabs)
· Fixed a bug where SetSelector help listed methods before list
· Fixed bugs where Bad Stick/Trigger Access error values did not show correct value if non-standard and invalid axis
June 24th, 2008· Improved set capacity (increased from 4 to 8 sets)
· Improved set handling (infinite sets a big step closer)
· Improved assignment right-click set menu (split into set submenus)
· Improved SetSelector indicators (replaced dots with set number and method icon)
· Improved window display positioning
· Improved window position saving
· Improved remember window positions option (on by default - centred if disabled)
· Improved closing of all windows (all windows close if re-opened - they now toggle)
· Improved global settings options layout (expanded window size and removed scrollbox)
· Improved timing accuracy and loop counting
· Improved component creation in some areas
· Improved processing of scan animation display (when no controllers are connected at startup)
· Improved keyboard test timing when emulating a sequence
· Improved controller properties layout
· Improved handling of dialog text formatting
· Improved default path determination
· Improved image text writing
· Added yellow highlight to Controller and Profile buttons whenever changes have been made and need saving
· Added type and battery/power information for Xbox 360 compatible controllers to properties window
· Added Profile Settings window
· Added KeyTapTime global and profile options
· Added AllowEmulatedKeys checkbox to keyboard test
· Added first run dialogs (welcome and program location, user file location, add associations)
· Added Associations option
· Added bolding of toggled global options (so you know what options have changed)
· Fixed a bug where assigning onto a set selector via advanced assignment window caused error (thanks to tbd2007)
· Fixed a bug where re-running with different path casing triggered different-location boot error (thanks to Thraka)
· Fixed a bug where programs launching Xpadder using "xpadder.exe" fail boot name check (thanks to Thraka)
· Fixed a bug where custom system font dpi size caused error (thanks to scotsummers)
· Fixed a bug where custom system font dpi altered window layouts
· Fixed a bug where custom system font dpi cropped all checkboxes
· Fixed a bug where custom system font dpi affected some fonts (Tahoma 8 is now used 100% throughout)
· Fixed a bug where assigning to a one-way set selector copied assignment to setbuddy
· Fixed a bug where keyboard settings checkboxes were not translatable
· Fixed a bug where Windows 2000 showed icons with magenta background
· Fixed a bug where holding shift/ctrl/alt and closing assignment window caused thread error (thanks to generic.imitation)
· Fixed a bug where Clear Advanced assignments de-focused advanced assignment window preventing keypresses
· Fixed a bug where clicking space to right of global options toggled the checkbox
· Fixed a bug where pressing Enter or Space in Advanced Assignments window after pressing a button caused button to repress
· Fixed a bug where flickering could occur on multi-core CPUs
· Fixed a bug where Inserting a slot caused flicker and highlighting of incorrect slot
· Fixed a bug where combinations with Windows Logo keys did not work (thanks to Christian)
· Fixed a bug where some dialog windows did not use bold text for details
· Fixed a bug where changing background colours while scan animation was running used an old workaround
· Fixed a bug where AssignmentPopUpMenu Clear option and wheel clicking was possible even if assignment was already empty
· Fixed a bug where Keyboard tab text was not translated (thanks to Ivan T)
· Fixed a bug where Controller Properties text could be scrolled via horizontal mouse wheel (thanks to SGTCableDog)
· Fixed a bug where multiple buttons could be auto-snapped to stick center in controller settings window
· Fixed a bug where Controller help did not show information about the Controller menu (only the tabs)
· Fixed a bug where SetSelector help listed methods before list
· Fixed bugs where Bad Stick/Trigger Access error values did not show correct value if non-standard and invalid
May 19th, 2008· Improved boot and startup code
· Improved graphical bit-depth (now uses 32bit imaging - 10% faster)
· Improved some slow graphical operations (mostly icon-related)
· Improved creation of popupmenu imagelists
· Improved creation of bitmap arrays
· Improved SetSelector list by sorting by set instead of method
· Improved controller settings stick tab (added tabs and new standard size icons, added "Enabled" text clicking to toggle)
· Improved Controller Settings window size to fit minimum 600x480
· Improved speed of controller settings activity scanning
· Improved speed of displaying controller if theme image is used
· Improved assignment keyboard display memory usage
· Improved speed of sample theme image gradient displays
· Improved speed of colour negating and vista gradient creation
· Improved bitmap image opening for future improvements
· Improved invalid image messages (added "theme" or "controller" to text)
· Improved boot resolution checker speed
· Improved boot error dialog button text (replaced "OK" with "Exit")
· Improved controller settings image tab layout (split into sub-tabs)
· Improved theme tab layout
· Improved some error dialog text for translation
· Improved checkbox text (replaced "Enable" with "Enabled")
· Improved Clear Controller Image dialog text
· Added One-Way SetSelector option
· Added SetSelector options to Assignment PopUp Menu
· Added custom pause slots
· Added Keyboard options tab and test
· Added Help button window toggling (re-click a Help button to close the Help window)
· Added executable name check (must be "Xpadder*.exe" - for example "Xpadder.exe" or "Xpadder5-1.exe")
· Added "Assignment" text to assignment window title (thanks to SGTCableDog)
· Added Clear confirmation windows when Clearing controller or theme images
· Added clicking of "Enabled" text for DPad and Triggers tabs
· Fixed a bug where connecting controllers out of sequence while Xpadder was running caused it to crash
· Fixed a bug where altering known controller list entry positions with only one controller connected caused crash
· Fixed a bug where ending session with Xpadder minimized did not save INI (thanks to SGTCableDog)
· Fixed a bug where ending session with Xpadder running did not cleanly exit coreloop
· Fixed a bug where CoreKeyScan checked for mouse buttons
· Fixed a bug where Stick2 Enabled text was not disabled when Stick1 was unavailable
· Fixed a bug where basic assignment checkboxes were not perfectly aligned
· Fixed a bug where right trigger failed to respond to manual axis selection if left trigger was set to none
· Fixed a bug where a permanently activated button (eg; mode switch) prevented button detection (thanks to Jezz)
· Fixed a bug where changing background colour did not work if scan animation was showing
· Fixed a bug where interface buttons (settings,help,controller,profile,abc,sets) did not use theme button style
· Fixed a bug where Minimize/Close window via Xpadder mouse emulation did not work (thanks to GrimResistance)
· Fixed a bug where 1 second delay occurred if moving Xpadder window via Xpadder mouse emulation
· Fixed a bug where DirectX libraries did not release memory if "User32.dll" was missing
· Fixed a bug where failed retrieval of DirectX exported function addresses caused error
· Fixed a bug where "User32.dll" did not release memory if function did not exist
· Fixed a bug where complete language files displayed "This language file 100% translated" (That's not 100% good English!)
· Fixed a bug where bitmaps saved in PhotoShop could not be used (thanks to TBD2007)
· Fixed a bug where pressing a button in controller settings window caused button to select and update name box repeatedly
· Fixed a bug where assignment window could not colour letters of assignments with more than 255 slots
· Fixed a bug where scanning for mouse assignments could not check assignments fully with more than 255 slots
· Fixed a bug where emulated keys could alter controller settings axis selection
· Fixed a bug where three-colour gradients did not set alpha value for first half
· Fixed a bug where core loop start delay was using all CPU for less than a millisecond
· Fixed a bug where "Fatal Error" text should have been "Error" (thanks to Zwaf)
· Fixed a bug where associated explorer icons resized badly
· Fixed potential freezing bugs in Assignment and Controller Settings windows
· Fixed bugs where Russian text did not fit in some Controller Settings labels, comboboxes and buttons
April 26th, 2008· Improved CPU handling (optimized for multi-core CPUs/multiple-CPUs, improved for single-core CPUs/single CPUs)
· Improved core stability (no more white screens or freezing) (thanks to everyone who reported problems)
· Improved controller array handling (uses less memory, safer data access, data is faster to access)
· Improved sub-windows (now 100% dynamic and 100% memory leak free)
· Improved controller file reading (removed support for old binary controller files)
· Improved some of the controller list handling
· Improved controller INI read speed
· Improved border interface display speed (2.2 times faster)
· Improved detection data memory usage
· Improved device acquisition speed
· Improved handling of assignment option toggles
· Improved file version reading and calculations
· Improved exit speed slightly
· Improved advanced assignment slot image update efficiency
· Improved white shading in some areas (was off-white)
· Improved handling of NameDisplay button during interface changes
· Improved displaying of profile creation/opening progress text
· Added core-synced animations (prevents window from being unresponsive while animations occur)
· Added smart button animation completion (prevents delays if no buttons or if all buttons fully animated)
· Added deletion prompt when deleting known controller
· Added individual NameDisplay button statuses for each controller
· Added "Opening controller" status text during animation
· Added Controller global settings button icons
· Fixed a bug where moving mouse speed sliders via mouse emulation caused errors (thanks to Swolch and Sametz)
· Fixed some thread memory leaks
· Fixed a bug where command line shortcuts did not launch until profile was manually opened (thanks to SGTCableDog)
· Fixed a bug where command line profile could be lost due to multiple controller messages
· Fixed a bug where command line profile did not open when controller reconnected
· Fixed a bug where mouse settings window did not show stick/dpad name for group mouse settings
· Fixed a bug where profile queue was not cleared when a new profile was received (thanks to WelshRabbit)
· Fixed a bug where grey did not produce a proper Vista style gradient
· Fixed a bug where altering trigger controller settings closed DPad window and not Trigger window
· Fixed a bug where Assignment Settings window still allocated memory for old tab icons from last year!!!
· Fixed a bug where buttons sometimes didn't identify correctly in controller settings window (thanks to SGTCableDog)
· Fixed a bug where button detection was ignored if an axis was active (thanks to SGTCableDog)
· Fixed a bug where pressing space while entering a sequence with auto-pauses could toggle the auto-pause checkbox
· Fixed a bug where checking an assignment option box and then pressing space to assign caused checkbox to toggle
· Fixed a bug where one Profile change value was not initialized (this may have caused a bug at some point)
· Fixed a bug where recent profile lists were not correctly defragged on startup
· Fixed a bug where selected button did not reset on controller settings tab change
· Fixed a bug where selected button did not take priority if controller settings buttons overlapped (thanks to SGTCableDog)
· Fixed a bug where controller list in INI was not correctly scanned for repeats
· Fixed a bug where language help button was missing (thanks to SGTCableDog)
· Fixed a bug where controllers help was out of order
· Fixed some bugs where show animation option was ignored
· Fixed a bug where sub windows closed after main window restore and not during minimize (thanks to SGTCableDog)
· Fixed a bug where ButtonDown status was not initialized
· Fixed a bug where cycle hash border did not fill button with long displayed assignment name
· Fixed a bug where Start options text was badly worded
· Fixed some bugs where Russian text did not appear fully in some locations
· Fixed a bug where gradients did not end perfectly on final colour
April 26th, 2008· Improved CPU handling (optimized for multi-core CPUs/multiple-CPUs, improved for single-core CPUs/single CPUs)
· Improved core stability (no more white screens or freezing) (thanks to everyone who reported problems)
· Improved controller array handling (uses less memory, safer data access, data is faster to access)
· Improved sub-windows (now 100% dynamic and 100% memory leak free)
· Improved controller file reading (removed support for old binary controller files)
· Improved some of the controller list handling
· Improved controller INI read speed
· Improved border interface display speed (2.2 times faster)
· Improved detection data memory usage
· Improved device acquisition speed
· Improved handling of assignment option toggles
· Improved file version reading and calculations
· Improved exit speed slightly
· Improved advanced assignment slot image update efficiency
· Improved white shading in some areas (was off-white)
· Improved handling of NameDisplay button during interface changes
· Improved displaying of profile creation/opening progress text
· Added core-synced animations (prevents window from being unresponsive while animations occur)
· Added smart button animation completion (prevents delays if no buttons or if all buttons fully animated)
· Added deletion prompt when deleting known controller
· Added individual NameDisplay button statuses for each controller
· Added "Opening controller" status text during animation
· Added Controller global settings button icons
· Fixed a bug where moving mouse speed sliders via mouse emulation caused errors (thanks to Swolch and Sametz)
· Fixed some thread memory leaks
· Fixed a bug where command line shortcuts did not launch until profile was manually opened (thanks to SGTCableDog)
· Fixed a bug where command line profile could be lost due to multiple controller messages
· Fixed a bug where command line profile did not open when controller reconnected
· Fixed a bug where mouse settings window did not show stick/dpad name for group mouse settings
· Fixed a bug where profile queue was not cleared when a new profile was received (thanks to WelshRabbit)
· Fixed a bug where grey did not produce a proper Vista style gradient
· Fixed a bug where altering trigger controller settings closed DPad window and not Trigger window
· Fixed a bug where Assignment Settings window still allocated memory for old tab icons from last year!!!
· Fixed a bug where buttons sometimes didn't identify correctly in controller settings window (thanks to SGTCableDog)
· Fixed a bug where button detection was ignored if an axis was active (thanks to SGTCableDog)
· Fixed a bug where pressing space while entering a sequence with auto-pauses could toggle the auto-pause checkbox
· Fixed a bug where checking an assignment option box and then pressing space to assign caused checkbox to toggle
· Fixed a bug where one Profile change value was not initialized (this may have caused a bug at some point)
· Fixed a bug where recent profile lists were not correctly defragged on startup
· Fixed a bug where selected button did not reset on controller settings tab change
· Fixed a bug where selected button did not take priority if controller settings buttons overlapped (thanks to SGTCableDog)
· Fixed a bug where controller list in INI was not correctly scanned for repeats
· Fixed a bug where language help button was missing (thanks to SGTCableDog)
· Fixed a bug where controllers help was out of order
· Fixed some bugs where show animation option was ignored
· Fixed a bug where sub windows closed after main window restore and not during minimize (thanks to SGTCableDog)
· Fixed a bug where ButtonDown status was not initialized
· Fixed a bug where cycle hash border did not fill button with long displayed assignment name
· Fixed a bug where Start options text was badly worded
· Fixed some bugs where Russian text did not appear fully in some locations
· Fixed a bug where gradients did not end perfectly on final colour
February 8th, 2008· Improved thread termination handling
· Added fatal error detection
· Added previous instance location check
· Fixed some bugs where white screens/freezes could occur
· Fixed a bug where selecting a controller button in controller settings window triggered profile change
· Fixed some help text bugs
January 11th, 2008· Improved NT-based framework (optimized for Windows 2000, XP, Server 2003 & Vista only)
· Improved compilation by using latest compiler
· Improved controller array memory usage
· Improved key scanning speed and efficiency in core loop
· Improved XInput DLL loading (can now be enabled or disabled without a restart)
· Improved creation, handling and memory usage for all main interface pop menu menus
· Improved Controller Settings detection scan processing
· Improved tab icon dimension calculations and memory usage
· Improved file dialog box creation and memory usage
· Improved help parameter handling on startup (help shows but Xpadder does not start)
· Improved application icon quality (added pixel resized alternatives)
· Improved "Can't edit sequence or cycles" message by replacing dialog with permanent titlebar text
· Improved stick/dpad settings name (renamed confusing "Layout Settings" as "Assignment Group Settings")
· Added dual thread support (all functions can now be operated via a gamepad)
· Added unknown (unlinked) controllers to the controller list in settings window
· Added multiple controllers to tray icon with custom controller icons and profile/open icons
· Added DPad auto-assign to 8-way mode
· Added highlighting of currently selected options in menus
· Added clicking of controller scan animation to open game controller control panel
· Added detection error label (replaces "stick/trigger is not analog" dialog window)
· Added AppPath registry key writing (works for 2000 & XP admins only, run as Admin in Vista for functionality)
· Added yellow highlight to controller name button to signify instruction or change
· Added controller name to Controller File open error dialog
· Fixed a bug where connecting a second controller could create multiple controller tabs
· Fixed a bug where undetermined XInput compatibilities caused minor CPU usage increase
· Fixed a bug where CPU usage increased slightly when controller settings window was open
· Fixed a bug where a controller file open failure did not remove automatic controller file opening settings
· Fixed a bug where identical controllers all loaded the controller file when only the first was necessary
· Fixed a bug where auto-assign determination did not check for None properly
· Fixed a bug where activated keys could fail to deactivate on exit (very unlikely but was possible)
· Fixed a bug where clearing an assignment with a displayed long name did not hide button before displaying
· Fixed a bug where help switch did not maximize main window if necessary
· Fixed a bug where core loop timing reset after 1.36 years of uptime (increased to 136 years)
· Fixed a bug where clicking the assignment window triggered a profile change even if sequence warning shown
· Fixed a bug where XInput option was needlessly available in Windows 2000
· Fixed a bug where lower dialog window text did not word wrap
· Fixed a bug where auto-assigning in mouse settings window didn't refresh assignment group settings window
· Fixed a bug where setting assignment group direction mode to the current setting triggered profile change
· Fixed a bug where switching mouse spring set to a non-mouse spring set caused mouse pointer to jump
· Fixed a bug where cancelled save controller dialog continued to ask to save for further identical controllers
· Fixed a bug where some controller settings tab text was incorrectly placed
December 7th, 2007· Fixed a bug where bad filename characters in controller name prevented Save As dialog from showing
December 3rd, 2007· Improved startup speed and memory usage
· Improved controller detection speed
· Improved assignment name display (expanding buttons, auto-display, assignment shown if no name)
· Improved raw data display speed
· Improved profile opening speed
· Improved language file opening speed
· Improved core loop memory usage
· Improved name toggle button design for increased visibility
· Improved DirectX/XInput help to reflect new driver package contents
· Added button styles
· Added language file update saving
· Added "connect controller" animation
· Added default names to save dialogs
· Fixed a bug where "Start with Windows" registry data was not validated
· Fixed a bug where Xpadder main window did not restore to foreground when tray icon clicked
· Fixed a bug where opening or clearing a theme image failed to redraw off-controller-image buttons
November 2nd, 2007· Fixed a bug where values were not saved/loaded correctly for button-based DPads
· Fixed a bug where bad DPad button values did not show full value in error message
· Fixed a bug where open sub-windows were not correctly closed on program exit (could cause error message)
October 26th, 2007· Improved controller settings window button scanning speed
· Added controller name to DirectInput error dialogs if the name is accessible
· Added file name and location to line parsing dialogs
· Added file location to language file creation dialog
· Fixed a bug where simulated sequences, toggled or turbo assignments could interfere with assignment windows
· Fixed a bug where dialog text spacing was affected by long/short translations
· Fixed a bug where drivers producing POV and button data together could not add a DPad
· Fixed a bug where English or space(s) counted as valid translations
September 28th, 2007· Improved shutdown speed
· Fixed a bug where settings/links were not saved if Windows session ended with Xpadder running
· Fixed a bug where some Chinese Traditional characters did not display in Help windows
September 21st, 2007· Improved memory usage (less than half the usage of v2007.09a)
· Improved core loop speed (much faster for controllers with less than 2 sticks)
· Improved startup speed
· Improved file loading speed and memory usage
· Improved settings options layout (makes space for future options)
· Improved assignment resizing quality
· Improved language file opening and memory usage
· Improved language-free session memory usage
· Improved Controller Settings image exporting
· Improved registry profile checker speed and memory usage
· Improved number base conversions
· Added plain-text controller file format
· Added low resolution assignment window
· Added theme background image options
· Added language settings tab, template creator and compatibility checker
· Added language explorer icon
· Added left/right buttons for advanced assignments pause slider
· Fixed a bug where DPad diagonals did not move when DPad position moved
· Fixed a bug where an error occurred when adding a Cycle Stop in Slot 1 of empty assignment
· Fixed a bug where some Chinese characters caused a Help window error
· Fixed a bug where unknown file chars didn't check for line limit
· Fixed a bug where trigger full was listed a - in controller settings comboboxes
· Fixed a bug where display did not update on restore if set other than 1 was selected when minimized
· Fixed a bug where bad values in profile files didn't show correct name in error message
· Fixed a bug where sub-windows did not close before a profile was loaded
· Fixed a bug where random themes did not trigger settings save on exit
· Fixed a bug where random themes did not randomize at start of session
· Fixed some help grammar errors
August 31st, 2007· Improved core memory usage
· Improved controller memory usage
· Improved stick calculation memory usage
· Improved file handling, reading speed and memory usage
· Improved assignment window layout (split into basic and advanced)
· Improved supported resolution (600x480 - supports original 640x480 plus rotated 800x600)
· Improved slot management (scrolling, insert, delete, clear)
· Improved sequence processing (5x faster)
· Improved settings windows access (left-click to open, right-click for menu)
· Improved stick status image update speed
· Improved DPad status visuals
· Improved maximum assignment name length (from 16 to 32)
· Improved opening of other stick settings window
· Improved compression and design of some icons
· Improved default theme (more professional, less colourful)
· Added smart profile saving (smaller files, faster opening, lower memory usage)
· Added unlimited assignment slots
· Added assignments via keypresses
· Added assignment window auto-closing
· Added pause auto-adding
· Added automatic variable pause block building
· Added common media key support
· Added 4-way, diagonal-only and 8-way DPad and Stick modes
· Added stick diagonal sizing
· Added sequence stopping via button re-press
· Added position saving for all windows
· Added stick status deadzone indicators for each zone
· Added Unknown slot value for corrupt slots and when inserting new slot
· Added advanced assignment test area
· Added "My Documents" as default file location for first-time run
· Fixed a bug where connecting a new controller sometimes triggered auto-open onto wrong controller
· Fixed a bug where assignments with sequence cycles cycled on each set change
· Fixed a bug where new rumble strengths preview rumbled all controllers instead of only selected
· Fixed a bug where settings windows did not close when switching sets
· Fixed a bug where layout settings buttons could not be clicked if a button was under it
· Fixed a bug where layout settings buttons areas were too large
· Fixed a bug where layout settings buttons could disappear if a button was displayed under it
· Fixed a bug where missing rumble strengths in profile were not defaulted correctly
· Fixed a bug where invisible buttons were hidden unnecessarily
· Fixed a bug where buttons appeared after minimize>set change>controller disconnection>restore
· Fixed a bug where settings/assignment windows didn't close when control removed from the controller
· Fixed a bug where Mouse Settings window was not closed when DPad or Stick Settings windows were closed
· Fixed a bug where non-terminated final file line could prevent error message from being shown
· Fixed a bug where assignment names were not size checked when profile opened
· Fixed a bug where turbo rate slider prevented some values from being used
· Fixed a bug where tray menu responded when file dialog windows were open
· Fixed a bug where relative filenames sometimes didn't save correctly in Windows 9x
· Fixed many translation sizing and missing text issues
August 2nd, 2007· Improved controller memory handling
· Improved entire icon handling system (faster and lower memory usage)
· Improved controller settings axis detection for low resolution or fast axes
· Improved INI file opening and registry conversion
· Improved special assignments access
· Improved some icons to represent their function
· Improved tab heights globally
· Added language support (English built-in)
· Added icon to Mouse Settings buttons in Stick and DPad setting windows
· Added 640x480 support for the Controller Properties window
· Fixed a bug where layout settings buttons disappeared with some image options
· Fixed a bug where opening a missing profile showed an INI file error message
· Fixed a bug where last accessed folders were not used in next session
July 13th, 2007· Improved key emulation memory usage and speed
· Fixed a bug where mouse speed was not accessible if mouse movement was not in slot 1
· Fixed a bug where both mouse speed directions were not accessible if both mouse speed directions were assigned
· Fixed a bug where the Download Image dialog text was misleading
July 12th, 2007· Improved INI data reading speed and error handling
· Added INI style profile files
· Fixed a bug where DPad Diagonal mode button selection didn't update bolding
July 10th, 2007· Improved startup speed and memory usage
· Improved executable size
· Improved global settings design
· Improved all settings tab icon displays
· Improved INI file reading, number validation and saving efficiency
· Improved option change processing
· Added "Minimize when closing main window" option
· Added "Show icon in notification area" option
· Added "Remember assignment window position" option
· Added highlight to button currently being assigned
· Fix a bug where Assignment window did not close when clearing assignment
July 7th, 2007· Improved startup speed and memory usage
· Improved key emulation speed
· Improved emulation compatibility for Windows 98 and Windows ME
· Added Clear option to assignment pop-up menu (or middle click assignment button to clear)
· Added Windows and XInput version information to About window
· Added clicking of None/Max assignment rumble icons to instantly slide
· Added settings icon for renamed Controller Settings window
· Fixed a bug where "Process Non-Selected Controllers" option change required Settings window closure
July 6th, 2007· Over 50 optimizations reducing exe size, startup speed and memory usage
· Minimum resolution required to start now 640x480 (see development forum for info)
· Added resolution checking for large windows
July 3rd, 2007· Added Windows 98 and Windows ME support
· Added resolution checking (minimum supported is 800x600)
· Fixed a bug where assignment window title bar could be off the screen at 800x600
June 30th, 2007· Added forwards/backwards compatibility for INI files (see development forum for info)
June 29th, 2007· Improved Windows version recognition to include all from Windows 95 upwards
· Added Windows version specific DirectX version messages
· Fixed a bug where XInput was scanned for on pre-XP systems (caused TraceMessage error if found)
· Fixed several bugs that caused crashes on Windows 95 (it nows gets to the "Not Supported" message!)
June 28th, 2007· Improved speed and memory usage for second instance handling
· Added INI file support (see development forum for more info)
· Added relative filename support
· Added controller name to open and save window titles
· Fixed a bug where displaying trigger window prompted to save profile changes on exit
June 26th, 2007· Improved interface startup speed (33% faster)
· Improved tray icon startup speed
· Reduced executable size and memory usage by detaching rarely-used registry converter
· Added auto-select set 1 option on minimize/restore in settings window
· Fixed a bug where the display didn't update shown set after restoring window (thanks to freakingretard)
June 23rd, 2007· Minor improvement to theme handling
· Added Windows 2000 support (beta - let me know of any problems)
· Fixed a bug where default options were not used in some situations
· Fixed a bug where Settings help buttons did not receive focus on tab-change
June 22nd, 2007· Fixed a bug where double-clicking a profile in Windows XP failed if the path included spaces
· Added Windows Server 2003 support
May 5th, 2007· Improved explorer associations and icons
· Improved profile handling
· Improved dialog window handling and default active button selection
· Improved title bar message display
· Improved Windows version checking
· Improved shell update efficiency
· Added command line switches and help
· Added shortcut launching via command line
· Added automatic restore/minimize if Xpadder is re-run
· Added controller link database duplication and bad entry checking
· Added controller link database recent list duplication and defragmentation
· Added taskbar button flashing (conforms to Microsoft specification)
· Added path extraction auto-prefixing
· Added option to show taskbar button when minimized
· Added XInput support for Logitech ChillStream controller
· Added recent documents list addition for open/save dialogs
· Fixed a bug where lack of X and Y rumble axes caused continuous error
· Fixed a bug where loading message flicked up if animations were disabled
· Fixed a bug where manually closing dialog window did not return best response
· Fixed a bug where opening the first profile on the recent list triggered a shutdown database save unnecessarily
· Fixed a bug where Controller Order column in Settings window was too short on Windows XP
· Fixed a bug where extension extraction didn't handle folders with extensions
April 27th, 2007· Improved controller link database accuracy and functionality
· Major improvements to DirectInput error handling
· Improved core loop speed and memory usage
· Improved scan request speed and efficiency
· Improved set resetting
· Improved starting when minimized (no window display delay)
· Improved XInput compatibility detection
· Minor help improvements
· Added recent profile lists based on each controller
· Added Controller tab in settings window allowing for controller ordering
· Added profile opening options to tray menu
· Added tabs to Controller Editor: Start, XInput, Finish
· Added Control Panel launching button to Controller Details window
· Added support for XInput versions April 2007 and December 2005
· Fixed a bug where key repeat emulation wasn't accurate
· Fixed a bug where mouse button release emulation was delayed by 10ms
· Fixed a bug where Shift key release while another key down was not emulated accurately
· Fixed a bug where mouse wheel scroll repeats interfered with key repeats
· Fixed a bug where key repeating was interrupted by set selecting
· Fixed a bug where set selecting with cycles caused cycling
· Fixed a bug where controller reconnection was not scanned by XInput if both APIs were in use
· Fixed a bug where XInput independent triggers weren't processed with some windows
· Fixed a bug where six or more Xbox 360 compatible controllers triggered repeated warning messages
· Fixed a bug where the debug version of DirectInput was not handled
· Fixed a bug where the Profile Settings icon was displayed even though controller was disconnected
· Fixed a bug where controller database updated when controller file was reloaded
· Fixed a bug where messages in dialog windows could wrap incorrectly
· Shift key and key release emulation more accurate
· Redesigned all windows for readability and Windows Theme awareness
· Minor interface button speed improvements
· New Theme and Controller Editor Image palettes (allow dragging)
· Added extra options to Set Selector list (auto-toggles)
· More efficient core loop
· Faster shutdown
· Real-time theme aware button shadows
· Replaced assignment options summary text with "ON" text in tabs
· Help text formatting and rewrite
· Some new icons
· Assignment Slots allowing for Combinations and Sequences
· Individual turbo rates and demo
· XInput support for Microsoft Xbox 360 Wireless Controller
· Assignment Naming and Name display
· Interface button down display
· Set button, pop-up menu and status re-design (ready for v4.6 set manager)
· Profile Converter confirmation
· Windows version check at startup
· Multi-Instance check message
· Beta prompts for future beta releases
· Controller Editor Image Fill correctly handles memory for large fills
· Set switching on non-selected controller or while window is minimized no longer updates interface
· Assignments with turbo and rumble enabled give motors time to reach full strength
· Controller and Profile Name buttons check for connected controller
· Controller and Profile Name buttons show gradient behind text
· Open/save dialogs handle missing paths correctly and allow explorer folder deletion
· "Save changes to Profile" dialog displays correct profile name when using multiple controllers
· "Show Desktop" icon no longer locks tray icon if a prompt is displayed
· Tray icon no longer handles clicks when non-exit prompt is displayed
· Previous Set Selector correctly cleared
· Prompts brought to front if window is minimized
· "Scanning for controller" title no longer displayed after cancelling via dialog
· Settings window correctly resets active tab
· Controller Editor Button details hide on tab change
· Every assignment and controller editor tab auto-focuses on Help button
· Embedded window icons removed
· Major improvements for force-feedback detection, initialization, memory usage and handling
· Real-time keyboard image (reduced memory usage and EXE size, ready for v4.4 customization)
· Expanded profile structure (more efficient and ready for v4.2 options)
· Updated compiler version from 2006.03 to latest
· All DirectX code updated from 2006.04 to latest
· All sub-windows are now live and non-modal
· Layout button display speed increase
· Improved Stick calculation efficiency and memory usage
· Set Selector list no longer shows current set (unnecessary)
· Tray menu redesigned
· Minor visual changes to sub-windows
· Per-assignment rumble settings
· Axis can now be set to "None" (allows ignoring and increases core-loop speed)
· Assignment window tabs (ready for v4.2 options)
· Support for Windows Vista XInput
· Stick button auto-centering in controller editor
· POV-based stick detection in controller editor
· Assignment summary
· Startup error message no longer shown in Windows Vista
· Help window remains open if no controller connected
· Controller editor uses correct API data for Xbox 360 compatible controllers
· DPad Detection button correctly disables if no DPad present
· Previous Set Selector link correctly blanked on change
· Title text no longer flickers if no controller connected
· Tray icon correctly handles clicks if a prompt is displayed
· Changing CycleLink correctly clears last CycleLink enabled status
· Lots of initialization errors fixed
· Lots of Windows Classic Theme fixes
· More efficient API loading
· More efficient memory usage
· Minor startup speed increase
· Massive reduction in EXE file size
· Increased button capacity from 12 to 32
· Improved sub-window handling
· Minor improvements to assignment window graphic
· Minor visual improvements to interface buttons
· New profile open animation
· New default theme
· External profile files (built-in converter for old internal profiles)
· Controller editor (layout image, input data and names)
· Support for latest DirectX (2006.10)
· Simultaneous API raw data display
· Automatic XInput compatability detection
· Stick Axes inversion options
· Multiple Xbox 360-compatible controllers correctly handled
March 13th, 2007· Shift key and key release emulation more accurate
· Redesigned all windows for readability and Windows Theme awareness
· Minor interface button speed improvements
· New Theme and Controller Editor Image palettes (allow dragging)
· Added extra options to Set Selector list (auto-toggles)
· More efficient core loop
· Faster shutdown
· Real-time theme aware button shadows
· Replaced assignment options summary text with "ON" text in tabs
· Help text formatting and rewrite
· Some new icons
· Assignment Slots allowing for Combinations and Sequences
· Individual turbo rates and demo
· XInput support for Microsoft Xbox 360 Wireless Controller
· Assignment Naming and Name display
· Interface button down display
· Set button, pop-up menu and status re-design (ready for v4.6 set manager)
· Profile Converter confirmation
· Windows version check at startup
· Multi-Instance check message
· Beta prompts for future beta releases
· Controller Editor Image Fill correctly handles memory for large fills
· Set switching on non-selected controller or while window is minimized no longer updates interface
· Assignments with turbo and rumble enabled give motors time to reach full strength
· Controller and Profile Name buttons check for connected controller
· Controller and Profile Name buttons show gradient behind text
· Open/save dialogs handle missing paths correctly and allow explorer folder deletion
· "Save changes to Profile" dialog displays correct profile name when using multiple controllers
· "Show Desktop" icon no longer locks tray icon if a prompt is displayed
· Tray icon no longer handles clicks when non-exit prompt is displayed
· Previous Set Selector correctly cleared
· Prompts brought to front if window is minimized
· "Scanning for controller" title no longer displayed after cancelling via dialog
· Settings window correctly resets active tab
· Controller Editor Button details hide on tab change
· Every assignment and controller editor tab auto-focuses on Help button
· Embedded window icons removed
January 6th, 2007· Major improvements for force-feedback detection, initialization, memory usage and handling
· Real-time keyboard image (reduced memory usage and EXE size, ready for v4.4 customization)
· Expanded profile structure (more efficient and ready for v4.2 options)
· Updated compiler version from 2006.03 to latest
· All DirectX code updated from 2006.04 to latest
· All sub-windows are now live and non-modal
· Layout button display speed increase
· Improved Stick calculation efficiency and memory usage
· Set Selector list no longer shows current set (unnecessary)
· Tray menu redesigned
· Minor visual changes to sub-windows
· Per-assignment rumble settings
· Axis can now be set to "None" (allows ignoring and increases core-loop speed)
· Assignment window tabs (ready for v4.2 options)
· Support for Windows Vista XInput
November 25th, 2006· More efficient API loading
· More efficient memory usage
· Minor startup speed increase
· Massive reduction in EXE file size
· Increased button capacity from 12 to 32
· Improved sub-window handling
· Minor improvements to assignment window graphic
· Minor visual improvements to interface buttons
· New profile open animation
· New default theme
· External profile files (built-in converter for old internal profiles)
· Controller editor (layout image, input data and names)
· Support for latest DirectX (2006.10)
· Simultaneous API raw data display
· Automatic XInput compatability detection
· Stick Axes inversion options
· Multiple Xbox 360-compatible controllers correctly handled
October 14th, 2006· Added Logitech WingMan Cordless Rumblepad controller and driver
· Fixed hama Double Action AirGrip buttons
· Added another Sony PlayStation 2 Controller driver for SuperDualBoxPro
· Added Sony PlayStation 2 Controller driver for RedOctane adapter
· Added Sony PlayStation Digital Controller for Dilong adapter
· Added Saitek P2900 Wireless driver
· Added X-Technologies Dark Rumble 0104-D driver
October 6th, 2006· Another Saitek P880 driver
· Another Sony PlayStation 2 controller driver for KikyX-Series adapter
· Game Elements Axis Pad GGE900 controller and driver
· ASUS XitePad driver
· Improved Apollo GP-3020 image
· Nintendo SNES controller and driver for SuperSmartjoy2 adapter
October 4th, 2006· Another Sony PlayStation Controller driver for PSXPad
· Extreme Technology MB-2113 driver
· Fixed Logitech Cordless PS2 Action Controller detection
· InterAct ProPad controller and driver
· Another Saitek P2500 Rumble Pad driver
· Another Gravis Eliminator AfterShock driver
· Sega Dreamcast Controller and driver for MagicBox adapter
October 3rd, 2006· Minor layout image quality improvment
· Fixed Century Concept 234995 driver detection
· SmartBox FT-691 driver
· Belkin Nostromo n50 SpeedPad controller and driver
· Logitech Extreme 3D Pro joystick and driver
· Logitech Cordless PS2 Action Controller and driver for Kiky X-Series adapter
· Another Game Elements GGE908 driver
September 29th, 2006· Sony PlayStation 2 controller driver for Dragon Double PowerBox adapter
· AutoLoad profile no longer lost if no controller connected
September 20th, 2006· Profile opening pop-up location
· Settings page remembered for each controller
· Another XFX XGear driver
· DirectInput error messages
· Tray icon pop-up menu
· Assignment button pop-up menu
· Right-click assignment to close window
September 7th, 2006· Faster and more accurate Xbox controller DirectInput Trigger reading
· Improved API handling (especially future XInput versions)
· Another MadCatz PC Con driver
· API manual selection no longer lost on controller change
September 5th, 2006· Shift Set automatically reverts to main set on minimize
· Another Mad Catz Xbox 360 Controller driver
· Assigning key with shift select correctly copies assignment to selected shift set
August 31st, 2006· Belkin Nostromo n45 controller and driver
· ThrustMaster Dual Trigger 2-in-1 Rumble Force controller and driver
· Mad Catz Xbox 360 controller and driver
· Sony PlayStation 1 Controller driver for SuperJoyBox5Pro adapter
· Saitek P2600 Rumble Pad button layout
August 21st, 2006· Global settings window (request options in forum)
· Theme support
· Auto-minimize option
· Profile menu icons
July 31st, 2006· Lots of Windows Classic Theme visual errors corrected
· Window focussing issues fixed
· Minor database layout label and order errors corrected
· Better Xbox 360 controller image
· Another PS2 driver
· JOYTECH Neo Se [Xbox360] controller and driver
· Controller database details