I've made a new ProTracker version (v2.3E), based on a disassembly and re-source of PT2.3D. I've basically fixed a million PT2.3D bugs. I've also removed the DMAWait concept (busy loop), which has been replaced with a scanline wait. This means that PT2.3E won't have that strange audio bug on fast
Amigas. No need to tweak that silly DMAWait value. Besides, it was maxed out at 9999 which was not enough for 68060 @ 50MHz or higher.
The replayer has not been tampered with, to maintain accuracy between versions (except that I fixed a potentional E8x crash and fixed a 128kB sample loop playback problem).
Also thanks to hoffman for some of the 128kB sample support code!
I need some beta testers until I tend to release it + source code. Please mention any bugs in here. Remember that this really is a beta version, so don't spread it all around and mention that I "released" a new version, because it's not final yet!
Here's the beta archive (it will be updated every now and then): http://www.16-bits.org/PT23E.LHA
== Changelist: ==
- "DMAWait" removed, using 7 scanline waits instead (Thanks PhotonSCX!)
- Channel muting now works like it should (instant, and restores volume on unmute)
- The VU-Meters are now bug free at high tempos (BPM)
- Added a "real" VU-meter mode (toggle it in Setup Screen #2. Setting is saved/loaded from config)
- All sample edit routines are now 128kB compatible (replayer, resampler, echo, cut, copy etc etc)
- Support loading 128kB samples
- You can now toggle channels by right clicking on the quadrascope channels
- Marking sample data now flickers *WAY* less
- The scopes now properly show: arpeggio (0xy), vibrato (4xy), tremolo (7xy) and sample offset (9xx)
- The scopes would display garbage on the right side when showing *small* looping samples
- The scope delta calculation is now more accurate on higher notes
- The Quadrascope and Spectrum Analyzer were never triggered if EDx (Note Delay) was used
- The VU-Meters and Quadrascope now retrigger on E9x (Note Retrig)
- Small code optimizations (SUBQ/ADDQ/MOVEQ, PC relative addressing, LEA instead of ADD.L #n,An etc)
- On .MOD load: Clear first two bytes of non-looping samples (prevent stuck beep syndrome)
- On .MOD load: Sample loop lengths of 0 or 1 are set to 2 (prevents PT freeze when loading malicious .MODs)
- When exiting "about screen", scope/analyzer mode is remembered
- Throw error when trying to zoom in on an empty sample
- The repeat delay for UP/DOWN on some gadgets was way too short on fast CPUs (also Disk Op./Pos Ed. scrolling was too fast)
- Hide loop pins and sampler play-pos-line if "volume tool box" is open
- You can now hide the "volume tool box" by pressing the VOLUME button
- The very top line of the VU-Meters graphics were never shown
- Added ALT+P (toggle Pos Ed. Screen)
- CTRL+O (Contract Track) didn't work at all. Now works beautifully.
- Don't display red mouse twice when canceling some ask dialogs
- Draw dotted center line in sample data in sampler screen
- CTRL+X/C/V and DEL/Delete now acts as sample data edit keys in sampler screen
- The "show 6 digit numbers" routine messed up the value on >65535 values
- All sample repeat lengths weren't initialized to 2 in "100 patterns" mode
- Show red cursor when trying to filter/boost an empty sample
- When trying to paste data to an empty sample, don't ask for mark position first
- The '.'/':' char in the sample chord editor would overwrite bitplane data
- Don't exit sampler volbox if editing a vol% gadget (volume toolbox) and pressing right mouse button
- Limit speed setting in setup screen to $1F (31)
- When editing a number in the GUI, the text cursor was one pixel off, vertically
- E8x (Karplus-Strong replayer effect) could read/write to a NULL pointer and crash PT
- EFx (Invert Loop replayer effect) could read/write to an uninitialized pointer
- Mask sample finetune to $0F in several places
- Limit sample volume to $40 in several places
- The major7 chord in the sample chord editor was wrong (changed 4th note)
- Pos-Ed was not updated when editing 'song length' number
- Pos-Ed could mess up the screen bitplane data when ran on a fresh start
- Pos-Ed would mess up the Yes/No dialog data if shown while Pos-Ed is open
- Pos-Ed could even lead to a system crash!
- Pos-Ed could overflow if scrolling down while holding right mouse button
- When number editing 'song length', clamp to 127 instead of 128
- Quite a few of the pixels in the graphical datas were wrong
+ more that I forgot to list here.
- Why not make a new 3.x version?
* Because 3.x never appealed to me, it always felt incomplete and messy.