Log inRegister an accountBrowse CSDbHelp & documentationFacts & StatisticsThe forumsAvailable RSS-feeds on CSDbSupport CSDb Commodore 64 Scene Database
 Welcome to our latest new user Nicron ! (Registered 2024-05-21) You are not logged in - nap
CSDb User Forums


Forums > C64 Composing > SID Factory
2006-09-02 16:19
Laxity

Registered: Aug 2005
Posts: 459
SID Factory

Ok.. So.. I added it and called it an alpha release since it's not yet completely done and subject to fundamental changes, especially in the file format.

SID Factory 0.5 (alpha 1)
 
... 54 posts hidden. Click here to view all posts....
 
2006-09-02 18:30
Laxity

Registered: Aug 2005
Posts: 459
Quote: Quote:
7) You mean like, clear the song?

I thought about separately clearing:
- all patterns and tracks
- all tables

But let's start from ANY clearing. :)

Quote:
11) Use speed table.. Have you tried to press "," and "." when the dynamic tables are visible..

OK, now everything is understood.


I can't see when clearing tables would make any sence, unless you want to clear ALL tables.. Now, clearing a sequence I can understand.. I usually keep sequence 0 the "standard" length of my song, so I just copy that to whatever sequence I wanna clear.

Note: I accidentally send you this reply as a PM.. Sorry.. That was not intended.
2006-09-02 18:46
Sidder
Account closed

Registered: Mar 2003
Posts: 56
Quote:
I can't see when clearing tables would make any sence, unless you want to clear ALL tables..

If we talk about sequences, I mean clearing ALL of them (without erasing instruments and tables). Kind of SHIFT + C.

IMHO there should be also way to cleaning ALL tables (without erasing patterns). It isn't used very often, but sometimes is.

I'd do it that way:


By pressing SHIFT + C messages apperas:

1st question
"Clear all sequences? Y/N"

2nd question
"Clear all tables? Y/N"

I think it's very natural and don't make any limitations.
2006-09-02 22:09
Sidder
Account closed

Registered: Mar 2003
Posts: 56
Let's leave for a moment keyboards and technical details. I'm trying to understand how pulse and filter tables works, but without success. :(

Maybe an example? How to create _pulse_ like that?

1. Start with 50% pulse.
2. Leave it unchanged for $13 frames.
3. Add $0e value for $20 frames.
4. Subtract $0e value for $20 frames.
5. Goto 3


I also cannot find description of HardRestart & Init tables. Maybe I've just got other docs than you? ;)
2006-09-03 06:55
Laxity

Registered: Aug 2005
Posts: 459
Quote: Let's leave for a moment keyboards and technical details. I'm trying to understand how pulse and filter tables works, but without success. :(

Maybe an example? How to create _pulse_ like that?

1. Start with 50% pulse.
2. Leave it unchanged for $13 frames.
3. Add $0e value for $20 frames.
4. Subtract $0e value for $20 frames.
5. Goto 3


I also cannot find description of HardRestart & Init tables. Maybe I've just got other docs than you? ;)


Ok.. Pulse first

00: 88 00 13

- Set pulse width $800 (50%) stay on program step $13 frames

01: 00 0e 20

- Add value $00e to pulse width, repeat for $20 frames

02: 0f f2 20

- Subtract $00e from pulse width, repeat for $20 frames ($1000-$000e=$0ff2)

03: 7f 00 01

- Jump to step $01

Init table and hard restart table isn't documented I just discovered!..

That hard restart table holds 16 sets of ADSR values. These are index from the instrument defining what ADSR is used for hard restart. Low 4 bits of the 3rd instrument byte are used for indexing into the hard restart table.

Neither is the init table.

The idea of the init table is that it hold a set of init variables per song in word file. So far only the first row of bytes make any sence as SID Factory doesn't support multiple tunes per work file.. yet..

In Driver 5.xx the init table describes the following:

aa bb cc dd

aa = Song speed pointer.
bb = D418 value (volume + band width)
cc = D417 value (resonanse and voice filter select bits)
dd = D416 value (filter value)

The filter setting stuff is there to avoid clicking on 6581.
2006-09-03 09:59
Sidder
Account closed

Registered: Mar 2003
Posts: 56
Thanks, I finally understood these tables. Aren't so difficult as they look.


Hmm...:

13) I don't see tone-portamento command (NP 21.G5 8x xx). Unavaliable?

14) What about changing global volume on the fly? I noticed only set up global volume in init-table, but changing it during song play seems to be impossible.
2006-09-03 12:16
Laxity

Registered: Aug 2005
Posts: 459
Quote: Thanks, I finally understood these tables. Aren't so difficult as they look.


Hmm...:

13) I don't see tone-portamento command (NP 21.G5 8x xx). Unavaliable?

14) What about changing global volume on the fly? I noticed only set up global volume in init-table, but changing it during song play seems to be impossible.


NP..

13) Yes.. unavailable for now. It's a must have, I know!

14) Seems that not implemented in the drivers either. Also absolutly a must have.
2006-09-03 15:18
Sidder
Account closed

Registered: Mar 2003
Posts: 56
All clear. So a little summary - what would I implement first (if I decided) and what is more important from my point of view:


High priority:
- tone-portamento
- changing global volume
- clearing all patterns
- SHIFT + "+" (jump to * start position)

Mid priority:
- jump to first line (of current instrument) in wave-table (JCH's "G") (ideal: in wave, pulse and filter tables - it'd be so useful!)
- scroll play (Yes and yes! :) - if tune is long without this function it's not easy to find and e. g. correct notes in 'far' sequences)
- clearing all tables
- stop mark in sequences-list


Low priority:
- easier docs: with examples how tables work


Anyway, SF is already good editor. I'll be waiting for all improvements.
2006-09-04 04:27
Laxity

Registered: Aug 2005
Posts: 459
Quote: All clear. So a little summary - what would I implement first (if I decided) and what is more important from my point of view:


High priority:
- tone-portamento
- changing global volume
- clearing all patterns
- SHIFT + "+" (jump to * start position)

Mid priority:
- jump to first line (of current instrument) in wave-table (JCH's "G") (ideal: in wave, pulse and filter tables - it'd be so useful!)
- scroll play (Yes and yes! :) - if tune is long without this function it's not easy to find and e. g. correct notes in 'far' sequences)
- clearing all tables
- stop mark in sequences-list


Low priority:
- easier docs: with examples how tables work


Anyway, SF is already good editor. I'll be waiting for all improvements.


On the driver level:

- Portamento is good to have
- volume change is a must.

These things are pending implementation.

On the editor level:

- Fix "Restore" bug.. ;)

- Clearing sequences and patternlist. Should be easy.

- Clearing patterns is a possibility, but I need to have a default pattern for the Init table per. player. This means I need to change the file format. Therefore, if this is needed, and I guess it is, this will be pending until I've planned the rest of the changes that will cause file format changes too.
- Shift + "+" - Have you tried pressing that combination? (I know.. that ALSO not in the docs!)

Those, jump to table, features are what I think of as "nursing" features. They are VERY nice, but not nessesary. Another thing that makes the rather complicated to implement is that the whole table setup is dynamic. Therefore linking a position in one table to another is rather bad. Especially as this info needs to be stored with the player/work file in some way..

- Scroll play.. Well.. I don't think so.. Let's see if I some day come up with an idea that allow this implemented easily.


2006-09-04 07:28
tlr

Registered: Sep 2003
Posts: 1726
Quote:
Those, jump to table, features are what I think of as "nursing" features. They are VERY nice, but not nessesary. Another thing that makes the rather complicated to implement is that the whole table setup is dynamic. Therefore linking a position in one table to another is rather bad. Especially as this info needs to be stored with the player/work file in some way..

Couldn't you store it in the player file as the actual code (one for each table) that parses the current entry for its target.
It could for example return table number in Acc and table index in X (and some code for no jump).

Just a thought.
2006-09-04 07:49
Sidder
Account closed

Registered: Mar 2003
Posts: 56
Quote:
- Shift + "+" - Have you tried pressing that combination? (I know.. that ALSO not in the docs!)


No - it IS in docs, but as not implemented. Quote:

"Shift + + - Go to marked track. (NOT implemented yet!)"
Previous - 1 | 2 | 3 | 4 | 5 | 6 | 7 - Next
RefreshSubscribe to this thread:

You need to be logged in to post in the forum.

Search the forum:
Search   for   in  
All times are CET.
Search CSDb
Advanced
Users Online
iceout/Avatar/HF
Guests online: 100
Top Demos
1 Next Level  (9.8)
2 13:37  (9.7)
3 Mojo  (9.7)
4 Coma Light 13  (9.7)
5 Edge of Disgrace  (9.6)
6 Comaland 100%  (9.6)
7 Uncensored  (9.6)
8 No Bounds  (9.6)
9 Bromance  (9.5)
10 Lunatico  (9.5)
Top onefile Demos
1 Layers  (9.6)
2 It's More Fun to Com..  (9.6)
3 Cubic Dream  (9.6)
4 Party Elk 2  (9.6)
5 Copper Booze  (9.6)
6 TRSAC, Gabber & Pebe..  (9.5)
7 Rainbow Connection  (9.5)
8 Dawnfall V1.1  (9.5)
9 Quadrants  (9.5)
10 Daah, Those Acid Pil..  (9.5)
Top Groups
1 Oxyron  (9.3)
2 Booze Design  (9.3)
3 Censor Design  (9.3)
4 Crest  (9.3)
5 Performers  (9.3)
Top Coders
1 Axis  (9.8)
2 Graham  (9.8)
3 Lft  (9.8)
4 Crossbow  (9.8)
5 HCL  (9.8)

Home - Disclaimer
Copyright © No Name 2001-2024
Page generated in: 0.058 sec.