1 OpenITG, beta 3 (in development)
2 --------------------------------
4 "clearmachinelogs" - clears crash logs from machine.
5 "transferlogsfrommachine" - transfers crash logs to a USB drive.
6 -Miscellaneous changes:
7 Changed default key for P1 select from Shift to forward slash (/)
8 Allow mounting the directory "Data/patch/patch/" as a patch instead of patch.zip
9 Changed OptionsList behavior (Exit on multiple selection, don't insta-exit on button)
10 Changed "DebugTheme" preference to "ShowThemeErrors"
11 Radar values (including step counts) now calculated for machine edits
12 Added blinking for GAME_BUTTON_START on LIGHTSMODE_MENU
13 Added StartRoulette and StartRandom messages for themes
14 Win32: Crash dialog shows OpenITG logo/text in place of StepMania (Wanny)
16 "GetDiskSpaceTotal", "GetDiskSpaceFree" - returns a string describing the
17 total or available disk space on the partition with UserPacks
18 "GetProductVer" - returns the OpenITG version (e.g. "beta 3")
19 HighScore: "GetModifiers"
20 ProfileManager: "IsSongNew(Song)"
22 USB devices would occasionally not be accepted
23 -Fixed minor cross-platform bugs:
24 BPMDisplay: display BPM multiplied by music rate twice instead of once
25 NoteDisplay: Twirl would render strangely with Flip, Tornado, etc.
26 ScreenGameplay: announcers actually work (Wanny)
27 ScreenDebugOverlay can now override used font (Wanny)
28 SongManager: fixed potential crash from random songs including customs
30 Arch updated to use SM4's RageDriver structure
31 Cleaned up LightsMapping structs so all mappings take arrays
32 Boost ITGIO/PIUIO thread priority (tentative fix for coin nomming)
33 Use read/write buffers for RageFile (tentative fix for slow memcard reading)
34 Switched to SM4-style button enumerations
35 -Compile chain updates:
36 Added "--with-sse2" flag to configure to enable SSE2 heuristic optimization
38 OpenITG, beta 2 (August 10th, 2009)
39 --------------------------------
41 "GiveUpTime" - amount of time that Start must be held to give up songs
43 ScreenTestInput - X, Y, On, and Off commands for text ("Inputs", "Devices")
45 USB devices that only reported as "sda" would stay in checking forever
46 Misdetection of partitions on USB devices caused some mounts to fail
47 -Fixed cross-platform bugs:
48 BPM display on gameplay doesn't scale with Music Rate setting
49 Several stray PauseMountingThread() calls causing cards to respond slowly
50 Perspective setting is not properly saved on USB profiles
51 Custom song loading cancellation causes delayed input events
52 ScreenArcadeStart times out, even with missing I/O handler
54 "ScreenUserPacks" - formerly ScreenAddSongs, manages USB-transferred game data.
55 -Code Structure Additions:
56 UserPackManager - singleton for managing users' add-on packs for the machine
57 -Miscellaneous changes:
58 Backported StepMania 4's RageFileManager, for better load handling
59 Backported Win32 renderer identification for display stats
60 Changed to StepMania 4 method of scaling screenshots
61 De-clamped PercentageDisplay (Getting Started displays properly now)
62 Long/Marathon calculated with steps length instead of music length
63 Moved "ScreenAddSongs" to "ScreenUserPacks", heavily updated interface
64 Improved Colorized Graph logic
65 Split bookkeeping into separate pages for machine v. service credits
67 LinkedOptionsMenu - set of intertwined menus, example metrics in home folder
69 RageFileDriverProbe - heuristic-based file driver that allows en/decrypted ZIPs
71 HighScore: "GetName", "GetScore", "GetPercentDP", "GetDate",
72 "GetSurvivalSeconds", "IsFillInMarker"
73 HighScoreList: "GetHighScores"
74 -New LUA member bindings:
75 ActorFrame: "SetUpdateCommand" (called on each ::Update, with fDeltaTime)
76 Actor: "addcommand", "GetName"
78 PlayerStageStats: too much stuff to list here
79 Song: "StepsLengthSeconds"
80 -New LUA singleton bindings:
81 GameState: "GetCurrentGame"
83 OpenITG, beta 1 (May 15th, 2009)
84 --------------------------------
85 -Obligatory code cleanup
87 OpenITG icon (Lightning)
88 Updated version information
90 "DebugInputDrivers" - additional debugging info for various I/O drivers
91 "EasterEggs2" - OpenITG-specific easter eggs (hint: play from a DDR group folder)
92 -New LUA singleton bindings:
93 GameState: "GetCurBPS", "DelayedGameCommand" (required for "theme" GameCommands)
94 NoteSkin: "GetNoteSkinNames"
95 ThemeManager: "GetCurLanguage", "GetCurThemeName", "GetThemeNames"
97 Course: "GetCourseDir"
98 PIUIO: "MK6_GetSensors"
99 RadarValues: "GetValue"
100 RageUtil: "SecondsToMMSS", "SecondsToHHMMSS", "SecondsToMSSMsMs"
101 Song: "IsLong", "IsMarathon", "IsCustomSong", "GetGroupName", and "MusicLengthSeconds"
102 Steps, Trail: "GetRadarValues"
104 "RADAR_CATEGORY_TAPS", "RADAR_CATEGORY_HOLDS", etc. for RadarValues
105 "OPENITG_VERSION" - returns a 3-digit token for version information
106 (xyy - x is build type, yy is version; also in Win32 "Properties")
108 "ScreenAddSongs" - allows addition of game data through operator menu (temp. disabled)
109 "ScreenPlayLights" - plays music, can run actors for cabinet/game lights
111 "MK3" - controls the Andamiro MK3 and MK5 ISA boards, for the heck of it
113 "G15" - controls LCD on the G15 gaming keyboard, also for the heck of it
115 "ReloadTheme" - forces a complete reload of metrics and graphics
117 "MissComboCommand" metric for Combo display
119 Added "NoteWillCrossIn1Beat", "NoteWillCrossIn2Beats", etc. for beginner helper
120 ScreenTestInput and ScreenTestLights broadcast Messages to actors
121 Re-backported input debounce, except it works this time. :)
122 CodeDetector ties for opening the OptionsList on ScreenSelectMusic
123 Record service credits separately in MachineProfile and Coins.xml
124 ScreenTestInput now triggers lights when arrows are pressed
125 "SongLength" sort on the song wheel
126 More intelligent lights autogeneration for single charts
127 Separate bookkeeper counter for service credits in Bookkeeping
128 (divided in the menu by Regular Credits / Service Credits)
129 LightsMapper - set which bits are triggered on LIGHTSMAN events
130 Added LightsMapping structs to ITGIO, PIUIO, and PacDrive
132 "Twirl" - rotates arrows (and holds!) around the Y axis
133 "Roll" - rotates arrows around the X axis
134 -Compilation updates:
135 Added date/version text to ProductInfo and DiagnosticsUtil
136 Rewrote "archutils/Win32/verinc.c" to generate a new verinfo.h
138 Crashlogs saving in Program (were supposed to save in Data)
139 "View crash dump" working incorrectly on the crash dialog
140 Inaccurate crashlog count in System Diagnostics
141 RageDisplay_D3D: fixed texture material issues, texture translation issues, and noteskin rendering
143 Tentative fix for memory card mounting issues (Matt1360)
144 64-bit crash on RageCryptInterface_ITG2 (dawnwolf)
145 Screensaver disable code didn't work for X11
146 -Fixed minor cross-platform bugs:
147 Custom song data not deallocated after the end of a round
148 Impressively inefficient method of re-creating the songs vector
149 "Disqualification" display showed for unjoined players on music rate
150 M-mod code didn't adjust to songs or courses with hidden BPMs
151 Slowdown on ScreenArcadeDiagnostics due to heavy device polling
152 No-timeout warning flood on custom song loading
153 Sensor reading problems with PIUIO on Test Input
154 Round text on ScreenSelectMusic not updating for non-song entries
155 -Fixed major cross-platform bugs:
156 Infinite loop and crash on changing coin modes on ScreenTitleJoin
157 Crash when changing from Intense to Normal-only courses or vice versa
158 Patched OGG songs circumvented Long/Marathon song limits
159 Crash on machine Edit-only songs (not a bug, but...)
160 M-mods crashed on marathons and malfunctioned on gimmicks
161 Tentative fix for strange crashes on "theme" GameCommand
163 "Tiny" can be used in place of "Mini" (4.0 compatibility)
164 M-mods disqualify on songs with hidden BPMs
165 (because it makes it easier to select a 'safe' modifier)
166 Load USB profile songs into memory, instead of onto the disk
167 Complete crypto rewrite - should be much more flexible
168 LightsDriver_External always loaded, to prevent arcade I/O problems
169 ScreenOptionsMenu switched to "Menu" lights mode
170 Always grab a serial number from the dongle, and autogen on fallback
172 OpenITG, prebeta (November 25th, 2008)
173 --------------------------------------
174 -Lots more code cleanup
175 -Compilation updates:
176 Added SVN revision script for Linux make (SM devs)
177 Added patch to compile on GCC 4.3 (dawnwolf)
178 Added patch to compile against LUA 5.1 (cyt0plas, Spectere)
180 Preliminary "M-mod" support (same format as C-mods, e.g. "M600")
181 Added custom courses ( /ProfileFolder/Courses/ )
183 Added coin counter functionality to LIGHTSMAN
184 Added RageCryptInterface for easier crypto implementations
185 Added code to enforce only one Iow or PIUIO handler
186 Fixed 'lights briefly flicker off on song start' annoyance
188 Tentative fix for sensor-read problems
189 Added coin counter functionality
191 Fixed overwrite of InputType with "Home"
192 Failed 'pTrail' assertion in Marathon mode
193 Accidental PIUIO coin counter activation
194 Linux: couldn't open GTK loading window
195 ITGIO - P1 Left and Right reversed
196 patch.zip mounted multiple times on start
197 Possible to load redundant arcade I/O drivers and cause problems
199 OpenITG, alpha 8 (August 29th, 2008)
200 ------------------------------------
201 -Lots of code cleanup
203 PacDrive ("pacdrive") - run lights using an Ultimarc PacDrive
205 Allow multiple lights drivers (use at your own risk)
206 Disqualification for music rate under 1.0x
208 Softcoded ITGIO input and added default mappings
209 Added mappings for all cabinet lighting
210 Fixed "no output on ITGIO" issue (read: full I/O support)
212 Support for r16 kernel hack handling
213 Lots of misc. structural changes
215 HoldsToRolls, a reversed NoRolls (make Bend Your Mind a living hell!)
217 SCREENMAN doesn't zero update after custom song loading
219 OptionsList crashes on load
220 Attract volume immediately resets after round
221 Attract volume isn't properly reset when entering operator menu
222 Crash on non-song wheel items after highlighted custom songs
224 ThreadedLights and associated code (too many bugs)
226 OpenITG, alpha 7 (July 11th, 2008)
227 ----------------------------------
228 -Preliminary, hacky lights-cabinet support in theme SM files
229 -Barebones work on tournament mode (it's still a while away)
231 Newer, more ITG-like input debouncing (half-working...)
232 "Select" or "MenuLeft+MenuRight" cancels custom song loading
233 Linux joystick driver is now threaded (and supports DebugUSBInput)
234 X11 input code backported from 4.0
236 IsUsingMemoryCard(PlayerNumber) - self-explanatory
237 Debug() - output debugging lines regardless of log settings
239 "OPENITG" (boolean) - can be used for compatibility with ITG2 AC scripts
240 -New (major) code functions:
241 StepsUtil::RemoveStepsOutsideMeterRange()
242 StepsUtil::RemoveStepsOutsideDifficultyRange()
243 Song::HasStepsWithinMeterRange()
245 "CardReadyP1", "CardReadyP2" - played when a card is verified ready
247 "DebugInputDrivers" - replaces DebugUSBInput, provides stats on I/O speed
248 "SoundVolumeAttract" - volume during attract sequences
249 "ThreadedLights" - run the lights outside the regular game loop, more accurate
250 "UseUnstablePIUIODriver" - set true to use the experimental I/O driver
252 "SoundVolumeAttract" - see above
254 "CompareScores" (ScreenGameplay) - manually set whether to compare or not
255 "OptionsList" (ScreenSelectMusic) - add a side panel to change options
256 instead of the old options menu
258 "ScreenExitCommand" - Functions as ScreenExit, but with the ability to launch
259 an executable file before exiting. Must have 'ExecPath' and 'ExecParams' in the
261 "ScreenTextEntryArcade" - a more arcade-friendly text entry screen (WIP)
263 BGCHANGES2 charts don't play properly
264 Timer is stuck at 0 if timer runs out on "Chance"
265 "nomines" and "nostretch" transforms have no effect in the editor menu
266 (OpenGL) Arrow shader fails on full-screen, causing scrolling brackets
267 Actor sounds ignore attract sound settings
268 After switching themes, OpenITG crashes on the songwheel
269 Theme switching sometimes causes failed asserts
270 Phantom input when canceling custom song loads
271 ScreenArcadeStart loops endlessly until manual exit
272 Without song previews, custom song lights don't properly load
274 Removed some personalized testing code
275 Removed some annoying opendir() error messages
276 -Code structure changes:
277 "MiscITG" moved to "DiagnosticsUtil"
279 OpenITG, alpha 6 (May 30th, 2008)
280 ---------------------------------
281 -Code structure changes:
282 Reverted InputFilter - too little gain for too many problems
283 -New metrics in ScreenGameplay:
284 (Note: must be in Event Mode, Versus, and playing the same chart)
285 "ScorePxAheadCommand" - played when player's score is higher
286 "ScorePxBehindCommand" - played when player's score is lower
288 "InputDebounceTime" - self-explanatory
290 "clearcredits" - clears credits on the machine (useful for testing)
291 "theme" - sets the theme, by name, when used (useful for theme switchers)
293 Tentative fix for memory card port/bus detection on usb_storage
295 Added code to reboot on crashes for arcade builds (#define ITG_ARCADE)
297 Enabled pad lighting on ScreenDemonstration
298 Coins added by GameCommands are not counted toward bookkeeping totals
299 Round text on ScreenSelectMusic updates for long/marathon songs
300 Moved OpenITG-specific profile options to Extra.ini (caused ITG2 crashes)
301 Disabled autogeneration of new Public/Private RSA keys on load failure
303 Some custom songs end immediately after start
304 Repeating menu input error on ScreenSelectMusic
305 Editor doesn't draw properly, causes failed asserts
306 Song wheel doesn't "budge" when attempting to move after Chance
307 "Revert from Disk" in editor causes duplicate charts, crashes
308 Crash on bookkeeping when switching to an undefined screen
309 In AutoplayCPU, rolls cause early judgments of arrows and mines
311 OpenITG, alpha 5 (April 30th, 2008)
312 -----------------------------------
314 ScreenArcadeStart - implemented, functional, does stuff
315 -Code structure changes:
316 Reboot-on-crash is disabled in non-arcade builds
317 Gameplay lights now autogen from dance-single only
318 InputHandler_Linux_Iow changed to InputHandler_Iow
319 InputHandler_Linux_PIUIO changed to InputHandler_PIUIO
320 InputFilter backported from 4.0, modified a bit
322 Added timer for testing input speed
323 Partially added coin counter code (not functional yet)
324 Changed input from 64-bit datatype to 32-bit datatype
326 Input always auto-remaps on startup
327 Input sometimes locks up after song loading fails
328 Player 2 I/O board input is mapped to Player 1's side
329 PIUIO only reports arrow presses from right sensor
331 Edits for Single show on all difficulties
332 Some modifiers don't animate in the editor
333 Song wheel can be moved on Chance
334 Voltage doesn't calculate correctly (lol, DDR)
336 "ITGIO" and "PIUIO" were reversed in RageInputDevice
338 Added working Iow input mappings (output is still borked)
339 Added working service/test and coin mappings for PIUIO
341 LOG->Debug() - always displays to stdout, without logging
342 GetIP() - currently Linux-only, returns IP and subnet
344 "CustomSongPreviews" - play audio previews of custom songs
345 "InputDebounceTime" - self-explanatory; smooth out bouncing input
346 -New USB profile features:
347 "AdditionalSpeedMods" - add specified speed modifiers
349 OpenITG, alpha 4 (March 21st, 2008)
350 -----------------------------------
352 OpenITG hangs/crashes/<bad stuff> when custom songs sample plays
353 Backgrounds are centered on the top left during gameplay
354 (Maybe?) Color1 as boolean LUA parsing error
355 -Fixed cross-platform bugs:
356 Editor's stepchart doesn't scroll properly
357 -Fixed package mistakes:
358 data.zip causes "Assertion 'm_LockCnt == 0' failed" error
360 OpenITG, alpha 3 (March 17th, 2008)
361 -----------------------------------
363 Added PIUIO/IOW default mappings
364 Added default keyboard maps for Select (P1 = right Shift, P2 = numpad 0)
365 -PrefsManager changes:
366 Removed "BrokenBGs" - binary plays BG scripts from all songs now
367 Added "DebugUSBInput" - output raw and formatted USB data to console
368 Backported "VisualDelaySeconds" on request
370 Start sound doesn't play when course is selected
371 Potential memory leak (minor) on SongManager array
373 ScreenArcadeStart (unfinished/not implemented in the Makefiles)
374 ScreenArcadeDiagnostics - installation and diagnostic information
375 ScreenArcadePatch - update the game through USB patches
377 USBDevice - a basic structure for reading USB hardware data
378 USBDriver - an abstracted USB I/O driver based off of libusb
379 ITGIO - a USBDriver specialised for ITG-IO JAMMA kits
380 PIUIO - a USBDriver specialised for ITG2 dedicated cabinet I/O boards
382 External ("ext") - makes light data globally available for other drivers
384 Linux_PIUIO ("piuio") - partially functional, not very usable
385 Linux_Iow ("iow") - untested, should be fully functional
386 -New RageFileDrivers:
387 RFDCrypt - handles AES-encrypted .zip files
388 RFDPatch - handles AES-encrypted patches
389 -New USB profile features:
390 Choose to save Catalog files ("UseCatalogXML") - default off
392 -AES encryption/decryption schemes, by Brian Gladman
393 -Public domain iButton SDK from Maxim IC
395 Patch-OpenITG.rsa - a new Patch verification sig for future OpenITG .bxr patches
397 OpenITG, alpha 2 (January 27th, 2008)
398 ---------------------------------------------
400 BrokenBGs - Emulate R21-style background handling
403 Windows: all of the weird bugs
404 Wheel changes songs even when Select is held down
405 Group banners do not load properly
407 Cancelling song selection through USB removal causes mount errors
410 OpenITG, alpha 1.1 (December 5th, 2007)
411 ---------------------------------------------
412 -Windows build, many thanks to Sniper257
414 Forced random on customs does not select song
415 Bizarre behavior when Tab is held during forced random
416 MAJOR: Gameplay input locks up on some errors
417 MAJOR: Custom song loading crashes on Windows
419 Group banners do not load
420 Cancelling song selection through USB removal causes mount errors
423 OpenITG, alpha 1 (December 2nd, 2007)
424 ---------------------------------------------
425 -Revision 21-style song loading support, starting at PlayersFinalized().
427 -Settable preferences (defaults in parentheses):
428 CustomMaxSeconds - Maximum allowed song length (120 seconds)
429 CustomMaxSizeMB - Maximum allowed song size (5 MB)
430 CustomMaxStepSizeKB - Maximum allowed SM file size (100 KB)
431 CustomsLoadMax - Limit amount of songs loaded (50 songs)
432 CustomsLoadTimeout - Custom song loading timeout (5.00 seconds)
433 SongEdits - Enable/disable custom songs. (0 [false])
435 -Significant new code functions:
436 SCREENMAN->OverlayMessage() - message overlay on top of screen
437 SCREENMAN->HideOverlayMessage - remove message from screen
438 SONGMAN->LoadPlayerSongs() - loads songs from a player's profile
439 (RageUtil) CopyWithProgress() - copy a file while sending progress
440 (fPercent) to a function pointer