65

(438 replies, posted in Commodore Computers)

Thanks! That's good to know! I added that link to the defMON wiki. That also reminds me: If anyone has a tune in worktune format, that they would like to share, as an example for new users of what defMON can do and how it works, don't hesitate to add it to the defMON wiki or send it to me so I can add it.

66

(438 replies, posted in Commodore Computers)

@f7sus4: Much appreciated!

67

(438 replies, posted in Commodore Computers)

F7sus4 wrote:

Instrument deletion bug.

If you load previously made tune, then delete large chunks of instrument data with shift+RETURN, and proceed to save the file, it might become corrupted. This does not happen if instrument lines are erased byte-by-byte with space bar.

It's difficult to predict whether this behavior is related to memory allocation or instrument jump points that defMON tries to recalculate while erasing consecutive lines.

A question of clarification here. What does "large chunks of instrument data" refer to here? Like.. just deleting a few rows, or... something like changing the block size and keeping SHIFT+RETURN pressed to delete like most of the instrument data? And also, what is it that gets corrupted? Is it the sidtab data specifically that gets corrupted (how? some random data shows up?), or does it seem to corrupt other data (like sequence data or whatever)?

Please respond at the new defMON forum, in this thread:
https://toolsforscholars.com/defmon/for … a7z2gc4rzc

68

(438 replies, posted in Commodore Computers)

@F7sus4: Thanks again for all your hard work reporting bugs and quirks. Regarding the keyboard hangup; yes, that's definitely a bug/quirk in the sense that I haven't implemented any protection against that. It may be possible to do that, so I'll put that on the "possible things to fix in defMON" list. Regarding 4x playing the sequence half as fast as 2x, that is the way it should be. "2x" means "call sidtab parsing twice for every time sequences are parsed" and "4x" means "call sidtab parsing four times for every time sequences are parsed".

...and yeah, 3x speed is something like a favourite of mine. Just enough to be enough, but not more than that. smile

Some other news:

1. For a long time I have had some plans to do a little series of video tutorials on defMON, to put on YouTube. So far it is just plans, so I don't want to promise too much. We'll see when/if it becomes reality. Nevertheless, the plans are at least quite concrete in the sense that I have noted down things I would like to include and in what episode, and so on. The target audience will be people who might not know much at all about how to use a C64, so it will definitely be basic and start from the very beginning. At least it will be basic in the beginning, and it may go into more complex things later on. If you have requests of what a video tutorial like that should include, don't hesitate to tell me.

2. I installed a little forum on the defMON wiki site. The forum software is really primitive, but... I dunno.. somehow I liked it for its simplicity. I am not sure if there is any interest in such a forum, since we have this thread here for example, but I think it is worth a try. At least it could help to organize things a bit. For example, there could be separate separate threads for each bug report etc. The link to the forum is:

https://toolsforscholars.com/defmon/forum/

I will continue to monitor this discussion thread of the time being though.

69

(438 replies, posted in Commodore Computers)

d3Ni$e wrote:

@F7sus4: Fantastic work! Will run this as the first test cus Im almost done with my second SID installation. smile
I dont understand that "25 Hertz" thing tho? What tempo or speed is that? I saw you have "3" in the speed column in the first video but in the second video it was faster and changed to "2" in the speed column. I have very little knowledge about Hertz so excuse me for that haha!

The C64 video circuitry updates the image on the monitor 50 times each second = a frame rate of 50 Hz. Typically C64 music is played by calling the player code once every frame. The current compo at CSDb asks people to create tunes that call the player code half as often = 25 hz. This means that the sounds will have a lower "resolution" in the sense that SID parameters are only updated half as often as a normal single speed tune. You could think of it as the opposite of a tune with multi speed sounds in it.

("Tempo" is "how many times the player code needs to be called before a new step in the sequence is parsed", so that's a different concept. )

d3Ni$e wrote:

Lets say Im making an empty Seq-list all filled with "00" and I write "01" and making a pattern there but I then take it away from the Seq-list.
I take it back again by typing "01" and I can see my pattern there still. I take it all away again so I have only "00" in the Seq-list. I then write "02" in Seq-list and making a pattern there. I take it away again as I write "00" only in Seq-list. It will remeber my patterns anyway right?

Yes, it will remember the patterns anyway.

d3Ni$e wrote:

But how far can it remember my patterns? All the way up to "FE"?

The maximum number of patterns in defMON is 7F. All patterns 00-7F will be remembered the way you asked about here.

70

(438 replies, posted in Commodore Computers)

Ah.. Yes, that's a good way of thinking actually, because when I looked at that actual code (the code trigged by SHIFT+U) I couldn't see anything that seemed wrong about it, but maybe the problem is — precisely what you suggest — that it DOES work, but only when one assumes that the data that this code operates on is well formed. I'll look further. Thanks for the input.

71

(438 replies, posted in Commodore Computers)

@f7sus4: Thanks for confirming. I just wanted to make really sure that there were no misunderstandings involved before going on extensive bug-hunts. I'm still unsure what may cause the bug though, so let me know if you (or anyone else) find some further clues about the context(s) where this problem may appear.

@d3ni$e: That's nice to hear. Thank you also very much for that second donation! You're the only one who donated any money so far, and I am very grateful for that. Regarding defMON tunes from me, I don't have any particular plans on spending time on anything C64-related at all except for that new editor. That will receive my full focus. All play and no work makes jack a dull boy.

72

(438 replies, posted in Commodore Computers)

Nice spaceship setup there. big_smile Reminds me a little bit about the Papaya Dub track that Goto80 and me did together, something like 20 years ago and before defMON existed. We used the 8x-speed version of the JCH editor/player for that track:

https://www.youtube.com/watch?v=gOG5hUUe4Gg

Good luck with the 2sid-experiments!

73

(438 replies, posted in Commodore Computers)

Hmhm.. I wasn't able to replicate the problem. Staring at the code for a few minutes didn't reveal any obvious problems either. It looks pretty solid. big_smile

It is of course easy to mess things up when using SHIFT+U, even if the function works as intended, so just to make sure that everything is clear regarding its intended function: In this context "unused" doesn't refer to empty sequences, but to sequences that are not used anywhere in any of the two sequence lists. So if a particular sequence is only used in a single place and you press SHIFT+U at that location (so that sequence number no longer appears in any of the two sequence lists), then this sequence may very well be overwritten next time SHIFT+U is pressed at some other location in the sequence list. I guess you're both well aware that this is how the function works though. Just want to make sure we're on the same page.

So, if there is a bug here, any further information that could help track the bug down would be appreciated. This is definitely the type of function that should be rock solid. Messing up song data isn't fun. I have never experienced it myself though. Odd!

74

(438 replies, posted in Commodore Computers)

Thanks for reporting guys. I'll have a look at it.

75

(11 replies, posted in Commodore Computers)

The amiga has the built in feature of looping sample waveforms. If you use a very short loop, you have a waveform there and it can be modified as you wish, since it is basically just a short sample. Editors like Future Composer, Soundmon and Sonic Arranger make heavy use of this as a central concept of how the player/editor works, and allows various forms of modulation of the looped waveforms — or Paul van der Valk's tunes in the Imploder tools. Hence these player routines sound very much like oscillators. It is basically the same idea as using the amiga hardware to loop short waveforms in Sound/Noise/Pro-tracker, but these other editors were designed with this type of usage in mind and therefore take it a few steps further.

76

(438 replies, posted in Commodore Computers)

Woohoo! Thanks a lot for that d3Ni$e! That is definitely super super appreciated!

Speaking of tweaking things like the ACID parameter, I plan to make defMON II a bit more live/jam friendly in a few different ways. One of these ways involves making it possible to do things like controlling the ACID parameter using paddles. A few weeks ago I visited Goto80, and we spent a whole evening just brainstorming around how defMON II could be made more live friendly than defMON, so I have a fairly clear idea of how I want things to work now. Many of the exact details of defMON II aren't settled yet though as I am early in the process, so I better not promise anything too specific at this point.

At the moment I am coding on the actual player (as opposed to the editor) that generates the music from the music data. While there are definitely some challenges relating to the player, I think the more difficult part of coding defMON II will actually be to write the code for the editor. defMON II will contain a sidtab on steroids, compared to defMON, so it will be a challenge to make the editor user friendly in that regard.

77

(6 replies, posted in Other Hardware)

Try plugging something else in, like your laptop, just to verify that the effect actually works. The output signal of guitars is very low indeed.

78

(438 replies, posted in Commodore Computers)

Yeah, I sometimes also get lost for an hour or so, just tweaking around in the sidtab with one or a few sequences looping. smile

NEWS: Active development of defMON II has started! The planned editor is a quite substantial undertaking, so it would be unrealistic to expect it to be finished/available any time soon, but at least I wanted you guys to know that I'm now actively working on this.

Whereas the original defMON was designed to allow the tunes to be used in things like games and demos, aiming for as little CPU usage as possible, defMON II instead takes the approach that all the available CPU power can be used for music. It will support at least three SID chips (9 channels) and there will be some sort of MIDI support as well (not just MIDI sync, but actual MIDI data).

(If you want to support the development, please consider setting up a small monthly donation. See the defMON wiki for info on that.)

79

(19 replies, posted in Trading Post)

I haven't used the Ultimate64 personally, so I don't know much about it. As far as I have understood, the general idea should be that it should be fully compatible with the C64, but maybe it is more like 99% compatible in actual practice. However, in this case I guess it could also be the case that the Ultimate64 emulates a cartridge at the same time as you have the midi cart inserted. If so, there may be a conflict between the emulated cartridge and the MIDI cartridge. The DATEL cartridge uses the following addresses:

MIDIcontrol = $de04 ;write-only
MIDIstatus  = $de06 ;read-only
MIDI_Tx   = $de05   ;write-only
MIDI_Rx   = $de07   ;read-only

If the emulated cartridge interferes with this in some way, the MIDI cart won't work. Then you would either need to disable the emulated cart, or your would need to use a cartridge ROM that doesn't interfere (I think the Retro Replay ROM may be worth a try for example).

(Cartridges such as Final Cartridge, Action Replay, Retro Replay, and so forth generally also use the $dexx adress range. I seem to remember that I used a cartridge port expander at some point, to get a MIDI cart working at the same time as an action replay/retro replay cartrdige, and the cartridge port expander allowed me to shift the MIDI interface to the $dfxx range instead. Then I also had to modify the software I used so that it used the $dfxx adresses to communicate with the MIDI interface, instead of $dexx.)

80

(19 replies, posted in Trading Post)

...aaaaaaand now I tried it with some other software that supports DATEL as well (King Fisher's "Midislave Manager") and the interface didn't work there either.

Conclusion: The interface doesn't work.