Join us on Discord!
You can help CodeWalrus stay online by donating here.

[TI-83+/84+][TI-82][TI-83] HoustonTracker 2 on-calc music editor

Started by utz, October 06, 2015, 01:25:44 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Dream of Omnimaga

  • Calculators owned: TI-82 Advanced Edition Python TI-84+ TI-84+CSE TI-84+CE TI-84+CEP TI-86 TI-89T cfx-9940GT fx-7400G+ fx 1.0+ fx-9750G+ fx-9860G fx-CG10 HP 49g+ HP 39g+ HP 39gs (bricked) HP 39gII HP Prime G1 HP Prime G2 Sharp EL-9600C
  • Consoles, mobile devices and vintage computers owned: Huawei P30 Lite, Moto G 5G, Nintendo 64 (broken), Playstation, Wii U

Ivoah

  • Calculators owned: TI-86 (now broken), TI SR-56, TI-Nspire CX CAS, TI-84+ SE, TI-84+ SE, TI-85, TI-73 Explorer VS, ViewScreen, TI-84+ CSE, TI-83+ SE

Dream of Omnimaga

I'll try on 2.53MP when I have a chance.

@utz does HT2 auto-saves the song in progress until you load a different song? If not then perhaps Juju should extend his contest deadline until the saving bug is fixed, else no one will be able to submit an entry if save doesn't work.
  • Calculators owned: TI-82 Advanced Edition Python TI-84+ TI-84+CSE TI-84+CE TI-84+CEP TI-86 TI-89T cfx-9940GT fx-7400G+ fx 1.0+ fx-9750G+ fx-9860G fx-CG10 HP 49g+ HP 39g+ HP 39gs (bricked) HP 39gII HP Prime G1 HP Prime G2 Sharp EL-9600C
  • Consoles, mobile devices and vintage computers owned: Huawei P30 Lite, Moto G 5G, Nintendo 64 (broken), Playstation, Wii U

utz

Quote from: DarkestEx on October 10, 2015, 08:34:19 PM
@utz you really did a great job with the sequencer. But I really think you should make a save format. It shouldn't be hard saving the program state to a file and retrieving the data from there later.

Thanks :) I'll look into it, but as I said, to my knowledge there is no safe way of creating appvars on the older models. Also, even on newer models it would be non-trivial, because savestates are compressed on-the-fly, hence there is no way of knowing ahead of time what the size of the resulting file would be. So, this will take a while, and creating a PC utility for extracting savestates has priority as that solution will work for all TI models.
That said, any help with saving to external appvars (especially Flash) would be very welcome. Documentation about the savestate format is in the appendix of the manual.

Quote from: Ivoah on October 11, 2015, 02:18:32 AM
It freezes when trying to save on a TI-84+ SE

@Ivoah Stupid question, but did you enter a valid savestate number (0..8 ) and confirm with key [.]? So far I have no other reports confirming this, so it must be specific to 84+SE/MP2.55.

Quote from: DJ Omnimaga on October 11, 2015, 03:37:29 AM
@utz does HT2 auto-saves the song in progress until you load a different song? If not then perhaps Juju should extend his contest deadline until the saving bug is fixed, else no one will be able to submit an entry if save doesn't work.

@DJ Omnimaga: Yes, the song in progress is auto-saved.

Quote from: DJ Omnimaga on October 09, 2015, 06:53:15 PM
Also TilEm for Windows lack sound support, unlike the Linux version. I tries the latest exe a few months ago and no sound option was available.  So far it seems like I have no issue with OS 2.53MP, though, other than a few occasional freezing. I just have to savestate often.

Oh, crap. I remebered that differently... paging @Lionel Debroux, would it be possible to compile the Windows version with alsa-win or so?
  • Calculators owned: TI-82, TI-83, TI-83+, TI-85, TI-86, TI-92+, Sharp PC-1403

Ivoah

Quote from: utz on October 11, 2015, 10:43:27 AM
Quote from: Ivoah on October 11, 2015, 02:18:32 AM
It freezes when trying to save on a TI-84+ SE

@Ivoah Stupid question, but did you enter a valid savestate number (0..8 ) and confirm with key [.]? So far I have no other reports confirming this, so it must be specific to 84+SE/MP2.55.

Nope. Maybe I should learn how to use the program before posting bug reports ;)
  • Calculators owned: TI-86 (now broken), TI SR-56, TI-Nspire CX CAS, TI-84+ SE, TI-84+ SE, TI-85, TI-73 Explorer VS, ViewScreen, TI-84+ CSE, TI-83+ SE

Lionel Debroux

I know that the TIEmu sound emulation uses SDL, but I can't pretend I looked at the code (or at many other parts of the TIEmu code, in fact). Yes, I'm supposed to be the maintainer of that unmaintainable piece of software :)
Member of the TI-Chess Team.
Co-maintainer of GCC4TI (GCC4TI online documentation), TIEmu and TILP.
Co-admin of TI-Planet.

utz

@Lionel Debroux Damn. I dunno about the code, but the emulator itself is pretty good. Imo it's the most accurate Z80 TI emu around.

@DJ Omnimaga: Sorry, completely forgot to answer your questions.

Quote from: DJ Omnimaga on October 10, 2015, 09:00:57 PM
Also is it possible to duplicate or clone note sequences and copy+paste one row in the sequencer? That could be handy when we got two similar sequences of notes with just one different note and the other idea for when we have multiple similar song sections.

- clone pattern: [ALPHA][ + ] (wow, writing "[ + ]" without the spaces does some weird stuff to the post hehe)
- copy+paste 1 row in sequencer: Yes, like normal copy/paste, just set block start/end to the same row. So, [LN] to mark the start, [STO►] to mark the end, move cursor to where you want to insert/paste, then [×] to insert or [ALPHA][×] to paste over.

I'm going to add "clone sequence row" as well, it just didn't make it into the 2.00 release. As for copying just a part of a note pattern, I'm not sure yet. I feel it would cost too much code. One thing I do want to add is "insert/delete row" on note patterns, though.
  • Calculators owned: TI-82, TI-83, TI-83+, TI-85, TI-86, TI-92+, Sharp PC-1403

Lionel Debroux

TilEm 2's emulation core is excellent, yeah. I'm not saying that just because TIlEm is portable and uses libti* (and Benjamin contributes to libti*).

TIEmu also has the most accurate TI-68k emulation core, but the code base is a mess...
Member of the TI-Chess Team.
Co-maintainer of GCC4TI (GCC4TI online documentation), TIEmu and TILP.
Co-admin of TI-Planet.

Dream of Omnimaga

The issue with TilEm Utz is that even though Juju compiled from the Linux version, he still couldn't find any sound option, so I doubt the version used to compile would make any difference, unless Juju was using the wrong Linux version of TilEm. Unless I am missing something?

Also thanks for the tip about copy/pasting. I saw it in the readme but I was confused about what you meant in there. It seemed like we could only paste, not copy specific sequences.



Also question Utz: Could you explain which drums would be the best for snares and kickdrums? THe best I could find on 2.53MP was 2C00 and 1C00. There was another one IIRC but it lacked enough bass for my needs. Everything else seemed to be just beeps or long never-ending noises.

Also, I just can't understand the channel panning effect section. It would be nice if there was a tutorial written for non-ASM/binary people in mind on how to set 1 specific channel left, right, rather than just the few examples that we given that I couldn't dechiper. Now for note panning I had to do trial and error because I didn't know what I was doing, to no avail.
  • Calculators owned: TI-82 Advanced Edition Python TI-84+ TI-84+CSE TI-84+CE TI-84+CEP TI-86 TI-89T cfx-9940GT fx-7400G+ fx 1.0+ fx-9750G+ fx-9860G fx-CG10 HP 49g+ HP 39g+ HP 39gs (bricked) HP 39gII HP Prime G1 HP Prime G2 Sharp EL-9600C
  • Consoles, mobile devices and vintage computers owned: Huawei P30 Lite, Moto G 5G, Nintendo 64 (broken), Playstation, Wii U

utz

@Lionel Debroux: I wish TIemu would have smooth sound output like Tilem, but sadly it just produces a garbled mess on both my Linux and Win machines :(

@DJ Omnimaga: @Juju: You know that the sound function is a bit hidden, right? (Hint: It's in the right-click menu, under "Link Cable" -> "Connect to Speakers")

Concerning drums, for kickdrums it would probably be the best to create a custom sample, as described in the "drums" section of the manual. I wish I could provide better snare sounds, but given the memory constraints this is nearly impossible, as "good" noise takes a lot of bytes. That said, there might be some room for improvement. If anybody finds any nice drum sounds via the user drum pointer (drum F), let me know and I'll see about including them in the standard set.
Also, in the next version of HT2 which will be ready in 2-3 months, there will be an additional method of controlling noise created by the A0x effect, so stay tuned for that ;)

Regarding the panning, I don't know how to explain it better. The counter-intuitivity irks me too, but there's no way around it unfortunately. Well, I'll try to give another example.

First, open up the calculator on your PC and switch it to hexadecimal mode.

Now, say we want channel 1 panned left, channel 2 panned right, channel 3 panned left, and drums panned center.

So, for channel 1, the manual tells us: "pan channel 1 left (add 0x02 to parameter)". So, we enter 2 into the calculator.
For channel 2, the manual says: "pan channel 2 right (add 0x04 to parameter)". So, add 4 in the calculator - 2+4=6.
For channel 3, the manual says: "pan channel 3 left (add 0x20 to parameter)". So, add 20 (hex) in the calculator - 6+20(hex) = 26(hex).
For the drums, we have "pan drums center (don't add anything to parameter)". So, 26(hex) + 0 = 26(hex).
Therefore, for this panning configuration, the command is 126.
  • Calculators owned: TI-82, TI-83, TI-83+, TI-85, TI-86, TI-92+, Sharp PC-1403

Dream of Omnimaga

Cool, thanks for the tips Utz. I'll give that a try when I have a chance. :)
  • Calculators owned: TI-82 Advanced Edition Python TI-84+ TI-84+CSE TI-84+CE TI-84+CEP TI-86 TI-89T cfx-9940GT fx-7400G+ fx 1.0+ fx-9750G+ fx-9860G fx-CG10 HP 49g+ HP 39g+ HP 39gs (bricked) HP 39gII HP Prime G1 HP Prime G2 Sharp EL-9600C
  • Consoles, mobile devices and vintage computers owned: Huawei P30 Lite, Moto G 5G, Nintendo 64 (broken), Playstation, Wii U

utz

  • Calculators owned: TI-82, TI-83, TI-83+, TI-85, TI-86, TI-92+, Sharp PC-1403

Dream of Omnimaga

Awesome. I'll check it out soon. I wanted to try your old demos before but they didn't work in WabbitEmu.

Also congrats @utz , HoustonTracker 2 video got featured on Ars Technica UK  :thumbsup:  http://arstechnica.co.uk/the-multiverse/2015/10/free-open-source-mod-lets-ti-graphing-calculator-make-sweet-1-bit-music/
  • Calculators owned: TI-82 Advanced Edition Python TI-84+ TI-84+CSE TI-84+CE TI-84+CEP TI-86 TI-89T cfx-9940GT fx-7400G+ fx 1.0+ fx-9750G+ fx-9860G fx-CG10 HP 49g+ HP 39g+ HP 39gs (bricked) HP 39gII HP Prime G1 HP Prime G2 Sharp EL-9600C
  • Consoles, mobile devices and vintage computers owned: Huawei P30 Lite, Moto G 5G, Nintendo 64 (broken), Playstation, Wii U

Yuki

#43
Sound support wasn't there when I compiled the latest code from SVN on OS X 10.9, but the one you linked works fine on Wine (except skin support, that's weird.)

EDIT: I just realized, I have to install SDL so audio gets enabled in Tilem. I recompiled it with SDL and now it works!
  • Calculators owned: TI-83+ (dead?), Casio Prizm (also dead???)
  • Consoles, mobile devices and vintage computers owned: A lot
Read Zarmina!
YUKI-CHAAAANNNN
In the beginning there was walrii. In the end there will be walrii. All hail our supreme leader :walrii: --Snektron

if you wanna throw money at me and/or CodeWalrus monthly it's here

utz

Oh wow, it's even on arstechnica.com now. Nice.
@Juju: Didn't realize you were on OS X. Glad you got it working :)

I'm working on a savestate manager utility now. It's still a long way to go though, especially considering my non-existant C++ skills. I'm basically learning the language as I go along :o
  • Calculators owned: TI-82, TI-83, TI-83+, TI-85, TI-86, TI-92+, Sharp PC-1403

Powered by EzPortal