@jefftheworld: Yes, correct. Also, ideally samples should have an even number of bytes including the terminating 0-byte, though that's not strictly required.

@garvalf: Thought I had added the link already, but yeah... might as well include the script directly. I'll just grab it from your site smile

Big thumbs up y'all smile

@jefftheworld: Yeah, I might be able to figure out some crude sample import, though it'll probably not happen in the next release yet. Also thanks for the chart... yeah I know the whole panning stuff is a bit confusing, I regularly have to look it up in the manual myself. Unfortunately I still haven't come up with a more intuitive method that doesn't mean a result in a load of additional computation time.

@snorkelitzor: Awesome, looking and sounding good!

163

(6 replies, posted in Releases)

noisy and heavy, me likey!

164

(10 replies, posted in Releases)

Yes. Yes. And yes again. This might very well top my list of 2015 favourites.

Ah, no, don't press [ENTER] on the self-test screen, just look at the number below the "Enter Self-Test" message. Not necessary anymore though, with this date code the OS version can only be 19.0.

You've got yourself a batch of some of the last regular 82s ever made wink Is it still the regular brick-shape, or is it the rather rare version with the rounded edges (http://datamath.org/Graphing/TI-82_2.htm)? In any case there's a chance these already have the newer (crappier) 83 style keypad controller built in. If that's the case I'd need to compile a special "82 with slow keyhandling" version.

166

(19 replies, posted in Commodore Computers)

Awwwww yisssss!

Hi guys, sorry for the late reply!

@TylerBarnes: Regarding backlighting and power consumption, I'm afraid drawing as little as 15-20 mA might already be too much on newer models. When in playback mode, HT2 itself is running near the sustainable maximum already. To run stable without occasional RAM clears, it even needs to go the extra mile and turn of USB and timer crystals to reduce power usage by a mere ~7.2 mA.

@nonfinite: What a nightmare! Glad you got it working, unfortunately I'm pretty clueless when it comes to Mac mattes. Do you think your friendly dev contact would be willing to provide such a brew keg thingy? I'd be more than willing to include that in the HT2 package.
The only other option would be to create a .82b backup file with the shell and HT2 already installed. However, I don't have the rights to distribute CrASH so even though probably nobody would complain, it's not really an option for me.

Regarding accidental keypresses, that seems like a bug to me. The keyhandler itself is a bit more responsive on 82 because the hardware allows it (better keypad debounce than later models), but it should never key-repeat in any case. Ok, let's get to the bottom of this. Could you let me know:

- the OS version ([MODE] [ALPHA] [S] to check)
- the HW revision (on the back of the unit, below the patent information, there is a 7-digit code starting with a letter followed by a slash)
- does it happen always, or only when RowPlay mode is enabled?
- HT2 stable, I guess?

Regarding backlight, there have been several attempts at it. However I believe these designs would have a negative impact on sound quality. Also there's another issue: On the Plus models, drawing extra power from the batteries while running HT2 would almost certainly crash the calc. So any backlight design should preferably draw from it's own power source, perhaps an additional button cell or something.

@garvalf: Yes, that's pretty much the only choice you got. Which can be a bit annoying when you've only got sound in 1 channel due to row transition noise, so in that case it would be better to switch to a lower tempo with Fxx. In the upcoming 2.1 version, I've tried to reduce the transition noise a bit, but it's still far from perfect (and probably never will be due to the way the sound driver works).

Well, if plugging this in while on the home screen (ie not running HT2 or the shell) doesn't cause a massive slowdown of the calc, then I suppose you're good wink On the other hand, I guess you could simply add a couple of diodes, just to be on the safe side.

@snorkelitzor: Aww yes! Sounds good to my ears as well. Yeah, the inversion is unlikely to matter, in fact HT2's output is reverted from TI's standard, so you're basically putting it back to "normal" wink Btw a side benefit of this would be that you can have your headphones plugged in at all times (even during normal TI-OS operation), provided no voltage is flowing back from the amp to the TI.

@nonfinite: ...and so it begins yikes Small note, perhaps you could modify the text on the SilverLink a bit, because actually users should avoid installing the official TI Connect software, as it doesn't work with TI-82 and has limited functionality in general. So TiLP should be the first choice, unless you're on OS X where TiLP is known to currently not work properly.

Hehe, yes, pcm2pwm is simple, but it does the job smile

And you're right, the example code was indeed missing that label. Well spotted big_smile

My toolchain for ZX is as follows (Linux setup obv):
- zmakebas to create BASIC loaders from regular text files
- pasmo assembler (perhaps not the most powerful z80 assembler around - that would be sjasmplus. But I like pasmo's clean and simple syntax).
- fuse emulator - one of the most accurate Spectrum emulators out there. It's debugger is quite powerful, but somewhat user-unfriendly - you set up your breakpoints in a sort of command line, eg. to set a breakpoint at $8000, you type "br 0x8000".

I use the usual shell scripting to glue it all together, ie:

zmakebas -a 10 -o loader.tap loader.bas     #make BASIC loader with BASIC start set to line 10 (= Speccy autorun)
pasmo -d --alocal --tap main.asm main.tap main.lst      #assemble tap file, include debugging output, and create a list file from symbols
cat loader.tap main.tap > test.tap
rm main.tap
fuse-gtk -m 48 -t test.tap    #autoload and run in fuse, 48K mode

@Prasaanth bandaru: Writing a 1-bit sound driver is actually not that difficult. Some basic knowledge of assembly/machine code is needed though.
I've written a rather extensive tutorial about it, starting with the very basics. So check that out if you're interested. Also, there's a load of source code on my github.

@nonfinite: Yeah, if the folder is called HT200, it's 2.00 stable. Ok, so for the time being I'm not going to do anything about this, but please do let me know if you run into this problem again. Regarding printing an info message - ha, I wish it was that easy! The problem is that the print driver is ridiculously inflexible. It is good at printing exactly those characters that are in use now, but even just adding the "H" would require major changes, and probably blow up the code by a few 100 bytes yikes So this kind of stuff will have to wait till I get around to doing that TI-OS integration I was talking about. The only thing I definately want to add in one of the next versions is a display of how much memory is left for saving.

173

(12 replies, posted in Releases)

Yeah, this is pretty damn neat! Love the rich sound textures and overall dark ambience.

Oh, I assumed you had accidentally forgotten to press ALPHA before hitting ON.
Hmmm, this isn't supposed to happen obviously, and unfortunately I have no clue what's going on there.
Stupid question, did you stop the player before trying to quit HT2? Also, what version are you on, 2.00 stable or github beta?

The 82 has the most user RAM, followed by the 83/82stats. The differences aren't that big though, ~28K on the 82 vs. 24K on the Plus models. Well, that's still one large song more you'll be able to save on the 82.

If you pull the batteries while the calc is running, it will indeed clear the RAM. When the calc is properly shut down though, you can safely pull the batteries for a few minutes. Doors CS itself stays because it resides in Flash memory.

nonfinite wrote:

Does the 83+ have less song storage space with HT2 like it did for HT1?

Yes, since it has less user RAM. Maybe I'll add support for the Flash memory at some point, but I'm still in doubt about it given that the TI's Flash has an expected endurance of only 10K erase-write cycles (after which your calc would be broken beyond repair, basically).

Regarding the idea of syncing, it's not as straightforward as it may seem. On the back end, HT2 has very little in common with LSDJ and NL. Without having seen the source code of either, I'm pretty sure they use interrupts for timing. This is not possible for HT2, which needs to do all timing through software counting. This, in conjunction with the 1-bit synthesis, leads to a couple of technical problems:
1) While HT2's new beta sound core is now cycle-exact, note data loading is not. Using drum triggers or effect commands will increase the loading time by a varying number of cycles.
2) More importantly, due to the 1-bit synthesis core which keeps the CPU busy at all times, there is not enough time available to wait for an incoming signal.

There is also a third problem, whis is related to how TI calcs derive their clock signal internally. Basically, it's a mess - you'll probably have a hard time finding two TIs that run at the same speed, or even just one that doesn't vary it's speed over time.

That said, I do like the idea of using one of the lines as input, hadn't thought of that. So I might try to implement this at some point in the (probably rather distant) future. But don't get your hopes up too high, as I tried to explain it would be extremely difficult to implement.

For the next 3-4 releases, the to-do list is pretty much set. The next version (due to be released in January) will have some additional sound features and more fx commands, as well as some changes regarding the ALPHA mode behaviour. For the version following that, I plan to make some rearrangements to the GUI, even more fx, and some additional playback and edit related functionality. After that, I want to completely rewrite the keyhandler, as to minimize those annoying glitches when you press a key during playback. After that, I want to add some stuff for "live mode" interaction - different glitches, temporary row/step looping, that sort of stuff. And after that, I want to look into integrating HT2 much deeper with TI-OS to salvage some more valuable RAM, which probably means writing a specialized shell program. Well, that's the idea at least. Undoubtedly this all amounts to several years of work, so it all depends on how much free time and motivation I'll have.