mod2vic - VIC-20 tunes for the masses
BotB Academy Project Dev
 
 
35644
Level 25 Mixist
cce
 
 
 
post #35644 :: 2014.01.15 3:41am :: edit 2016.09.10 1:27am
  
  TristEndo, TMM12, Lukas Eriksson, rainwarrior, RoccoW, Sinc-X, JINTAKE, HertzDevil, anewuser, Tilde, irrlicht project, Interrobang Pie, raphaelgoulart and Slimeball liēkd this
Create VIC-20 music from ProTracker modules.

VIC 20 music toolkit
1. Write your song and save it as SONG.MOD.
2. run make_song.bat

You can change the song by editing make_song.bat


You need to have Python 3.x
installed to run this.

Download: vicmusicconverter_r1.zip


The package includes the conversion scripts, a template module and the win2c64-assembler.

Converter source: http://bitbucket.org/seece/mod2vic/


Edit: Fixed the links, for some reason BotB doesn't like https.
 
 
35652
Level 27 Chipist
raphaelgoulart
 
 
 
post #35652 :: 2014.01.15 5:29am :: edit 2014.01.15 5:29am
Any specific limitations? Analyzing the example mod, seems like instrument 1 can only go to channel 1, 2 to 2 and so on, and the only effects allowed are Fxx, Cxx and ECx... Am I right?
(And thanks for sharing this with us! \:D/)
 
 
35653
Level 25 Mixist
cce
 
 
 
post #35653 :: 2014.01.15 6:30am :: edit 2014.01.15 6:31am
  
  sleeparrow and raphaelgoulart liēkd this
Yes there are a plenty of limitations. Here's some excerpts from README.md:


### Gotchas
* All patterns are exported, even those not appearing in the order list
### Channel layout
The imported module must contain 4 channels.
CHN 1 low pulse (alto)
CHN 2 medium pulse (tenor)
CHN 3 high pulse (soprano)
CHN 4 noise (lion growl!)
Instrument values are ignored by the exporter.
### Supported effect commands
Note: you *cannot* use an effect command and a note on the same row.
0EC note cut
CXX set global (not channel!) volume
FXX set speed, valid values 0-1F
## Playroutine
If you run out of RAM (more than 10 patterns of music or so) the song data will be written over VRAM. This is OK but you need to disable all screen operations by setting `--draw_graphics 0`. Good luck.
 
 
35654
Level 27 Chipist
raphaelgoulart
 
 
 
post #35654 :: 2014.01.15 6:46am
Ah, that helps a lot! Thanks =D (why didnt I even try reading the readme? -_-)
 
 
35660
Level 23 Chipist
irrlicht project
 
 
 
post #35660 :: 2014.01.15 7:51am
  
  nitrofurano and garvalf liēkd this
Very very nice. I hope it can be ported to *nix somehow (because after all, what's the point of having a python script if it's not portable).
 
 
35665
Level 20 Chipist
linde
 
 
 
post #35665 :: 2014.01.15 9:21am
  
  irrlicht project, raphaelgoulart, cce and Slimeball liēkd this
The script looks platform independent except for the dependency on the assembler, so I guess the player source could be reworked to build with a cross platform assembler.

And there are plenty of reasons for using python beside platform independence :).
 
 
35667
Level 20 Chipist
linde
 
 
 
post #35667 :: 2014.01.15 10:31am
  
  cce, irrlicht project and raphaelgoulart liēkd this
I made a fork that generates source that builds with Kick Assembler (cross platform assembler)

https://bitbucket.org/boomlinde/mod2vic/overview

The readme still applies except you need to build with "java -jar kickassembler.jar -binfile player.s; mv player.bin player.prg"
 
 
35677
Level 19 Chipist
YERZMYEY
 
 
 
post #35677 :: 2014.01.15 11:37am
Hi, there is a 404 error in the DOWNLOAD link http://https//dl.dropboxusercontent.com/u/5753422/exe/vicmusicconverter_r1.zip
Could You upload the prog again, somewhere?
 
 
35679
Level 27 Chipist
raphaelgoulart
 
 
 
post #35679 :: 2014.01.15 11:47am
  
  MiDoRi and Slimeball liēkd this
the error can be fixed easily by removing the http:// beggining and putting a ":" between the "https" and the "//".
 
 
35805
Level 31 chipist
Chip Champion
 
 
 
post #35805 :: 2014.01.18 5:37am
  
  MiDoRi, TMM12, raphaelgoulart and Slimeball liēkd this
i couldnt get it to work :'(

i can only understand drag and drop technology
 
 
35808
Level 27 Chipist
raphaelgoulart
 
 
 
post #35808 :: 2014.01.18 6:12am :: edit 2014.01.18 6:12am
  
  Xemogasa, Slimeball and cce liēkd this
xemogasa taught me how to fix that on skype
[11:23:58] Xemogasa: i don't know how it is in portuguese but i'll try to translate
[11:24:11] Xemogasa: start menu -> right click computer -> properties
[11:24:18] Xemogasa: advanced system parameters
(...)
[11:25:02] Xemogasa: then when you're in there
[11:25:10] Xemogasa: the button just before "ok"
[11:25:20] Xemogasa: variables or some shit
[11:25:27] raphaelgoulart: k
[11:25:30 | Editado 11:26:14] Xemogasa: then find the variable with the name Path
[11:25:34] Xemogasa: edit it
[11:25:38] Xemogasa: and add this :
[11:25:49] Xemogasa: ;C:\{insertpythonfolder}
[11:25:55] Xemogasa: of course edit the last part
[11:26:22] Xemogasa: the ; is intentional too
[11:26:40] Xemogasa: of course if there already is an ; at the end don't add it
[11:27:02] Xemogasa: then click apply, ok then ok
[11:27:05] Xemogasa: then retry
 
 
35815
Level 22 Chipist
brightentayle
 
 
 
post #35815 :: 2014.01.18 7:20am
  
  Xemogasa, raphaelgoulart, cce and Slimeball liēkd this
I knew it had to do something with PATH! ._.
 
 
35882
Level 19 Chipist
YERZMYEY
 
 
 
post #35882 :: 2014.01.19 11:23am
I installed all of this.
And I get only a requester:
"Name >>Python<< not recognized as an internal not external order, executable program or a batch file".
 
 
35886
Level 27 Chipist
raphaelgoulart
 
 
 
post #35886 :: 2014.01.19 12:30pm
YERZMYEY the solution is my long comment above
 
 
35890
Level 19 Chipist
YERZMYEY
 
 
 
post #35890 :: 2014.01.19 1:24pm
Utz helped me finally and it works now.
Sadly I have to resign as the chip generates far too much false tones, for my taste. :( I regret.
 
 
36153
Level 23 Renderist
anewuser
 
 
 
post #36153 :: 2014.01.24 8:12pm
the charm of RAW XDDD
 
 
36159
Level 19 Chipist
Xemogasa
 
 
 
post #36159 :: 2014.01.25 4:08am :: edit 2014.01.25 4:16am
  
  MiDoRi and cce liēkd this
actually, every folder in the "path" variable is where it will search for an exe with an unspecified folder. obviously, if you don't specify to the computer where to find the file, it won't find it, so there's a pre-made variable to make your life easier. alternatively, in the bat file, you could have replace python by "C:\Python33\python.exe" (with the quotes) so it'd know the precise location for python.exe, then you wouldn't have had to add the folder to the path variable. but python/java/etc bat files don't specify the folder for the following reason : imagine your install folder is not C:\Python33, then the bat file would become wrong. without specifying the folder, windows will search in the path variable to find where to search for python.exe, therefore, since you have added your real python folder to the path variable, it will find python.exe in this folder.
 
 
37583
Level 30 Chipist
Warlord
 
 
 
post #37583 :: 2014.02.18 3:47am
  
  Jangler, Savestate, JINTAKE, Slimeball, cce, irrlicht project and Chip Champion liēkd this
The only instruction you need for making VIC music ;P http://sid.fi/~grue/vicvoices1.gif
 
 
37604
Level 23 Chipist
irrlicht project
 
 
 
post #37604 :: 2014.02.18 8:17am
  
  JINTAKE, b00daw, Slimeball and Warlord liēkd this
And coming up in the next version: viznut waveforms


Now if you'll excuse me folks, I'm busy floating around on my magic carpet...
 
 
39064
Level 23 Chipist
irrlicht project
 
 
 
post #39064 :: 2014.03.04 8:29am :: edit 2014.03.04 11:56am
  
  Slimeball liēkd this
Btw, I just noticed mod2vic prgs crash with memory expansion enabled. Can that be fixed somehow?

Edit: Nevermind, here's a dirty fix
. To use it, replace all occurances of "player" in the batch file with "player16", obviously.
 
 
39307
Level 27 Chipist
KungFuFurby
 
 
 
post #39307 :: 2014.03.07 1:38pm :: edit 2014.03.07 1:40pm
Does the noise provided in the .MOD file really sound like that on the real hardware? Sounds different from the noise I usually hear in BOTB VIC-20 entries, that much I know. Same goes for tenor and soprano.
 
 
39318
Level 27 Chipist
raphaelgoulart
 
 
 
post #39318 :: 2014.03.07 3:02pm :: edit 2014.03.07 3:05pm
  
  Robyn hæitd this
the tenor and soprano sample are also 50% square waves, for some reason they arent in the .mod provided.
just fix that with the pencil tool, because the length of those samples are correct
 
 
39373
Level 25 Mixist
cce
 
 
 
post #39373 :: 2014.03.08 8:34am :: edit 2014.03.08 8:38am
I don't know why the samples are mangled in the mod file. They were just 50/50 square waves when I saved the file, I promise! The .MOD playback is just an approximation in any case. For example the noise channel is completely different in reality.

@irrlicht project: yeah the player is designed only with the unexpaned VIC-20 in mind. Good to hear you got it working.
 
 
52219
Level 27 Chipist
raphaelgoulart
 
 
 
post #52219 :: 2015.01.25 10:10am :: edit 2015.01.25 10:28am
ok i'm trying to convert an unfinished tune of mine and even with draw_graphics off it wont work (the output file is larger than the vic20's available RAM, which is 5kb i guess)
but irrlitch's fix doesn't work for me either, it just gives a lot of errors (396 to be exact)(seemingly most of these were syntax errors which i was able to fix myself and bring it down to 9 errors of undefined stuff) but i may have done something wrong idk
 
 
52222
Level 27 Chipist
raphaelgoulart
 
 
 
post #52222 :: 2015.01.25 10:34am
ok i was able to get a prg file but it says "?SYNTAX ERROR" when i open it on winvice with the 16k memory expansion
 
 
52223
Level 30 Mixist
Baron Knoxburry
 
 
 
post #52223 :: 2015.01.25 10:48am
  
  raphaelgoulart and Slimeball liēkd this
RAM addresses change when you add expansion memeory. I have no idea if this tool is designed for the default vic or an expanded one.
 
 
52224
Level 23 Chipist
irrlicht project
 
 
 
post #52224 :: 2015.01.25 11:00am
  
  raphaelgoulart liēkd this
Yep, it's for unexpanded vic. If you want to use it with 16k expansion you can use the dirty fix that I posted somewhere a few posts earlier.
 
 
52225
Level 27 Chipist
raphaelgoulart
 
 
 
post #52225 :: 2015.01.25 11:02am :: edit 2015.01.25 11:05am
i tried with your fix, it didn't work either
lemme retry
396 errors, mostly unexpected character/input
 
 
52227
Level 28 Renderist
Slimeball
 
 
 
post #52227 :: 2015.01.25 11:34am
  
  raphaelgoulart liēkd this
raphaelgoulart, you should get this batch file:

https://dl.dropboxusercontent.com/u/70256161/asdf.bat

Copy it to the the same directory that contains make_song.bat and post the resulting error_log.txt here ;)
 
 
52228
Level 27 Chipist
raphaelgoulart
 
 
 
post #52228 :: 2015.01.25 11:57am
 
 
52229
Level 28 Renderist
Slimeball
 
 
 
post #52229 :: 2015.01.25 12:07pm :: edit 2015.01.25 12:08pm
  
  raphaelgoulart liēkd this
irrlicht project seems to have used a different assembler for his driver. It looks like he based it on linde's version, which uses kickassembler rather than the assembler that comes with the music kit. :P

It probably should work if you download linde's converter and apply irrlicht project's fix to that.
 
 
52230
Level 27 Chipist
raphaelgoulart
 
 
 
post #52230 :: 2015.01.25 12:10pm :: edit 2015.01.25 12:11pm
(redacted)ok, i think i'll give it a try!
 
 
52233
Level 28 Renderist
Slimeball
 
 
 
post #52233 :: 2015.01.25 12:27pm
  
  raphaelgoulart liēkd this
And if that doesn't work, you could try THIS 8==========D

https://dl.dropboxusercontent.com/u/70256161/player16.s

I applied my own dirty fix to the player.s that comes with the music kit.... It should work! ....if you don't mind the glitchy visuals. ;)
 
 
52235
Level 27 Chipist
raphaelgoulart
 
 
 
post #52235 :: 2015.01.25 12:32pm :: edit 2015.01.25 12:33pm
(redacted again)ok, will try again! thanks a lot :D
 
 
52237
Level 27 Chipist
raphaelgoulart
 
 
 
post #52237 :: 2015.01.25 12:35pm
  
  cce and Slimeball liēkd this
ok, this worked haha <3 thank you! :D
 
 
52238
Level 28 Renderist
Slimeball
 
 
 
post #52238 :: 2015.01.25 12:35pm :: edit 2015.01.25 12:36pm
  
  raphaelgoulart liēkd this
I forgot to mention that the player16.s I posted works with winc64 (and probably not with Kick Assembler)

If you get any errors let me know. :P

(ninja'd) ;)
 
 
72278
Level 27 Renderist
b00daw
 
 
 
 
post #72278 :: 2016.09.10 4:56am
  
  Jangler, cce, shinichi and Savestate liēkd this
*bump* For those that were having issues, cce has graciously fixed the link to the distribution package.
 
 
132998
Level 30 Mixist
tennisers
 
 
 
post #132998 :: 2020.12.20 5:43pm
how do you set `--draw_graphics 0`? is that in the make song bat or in vice itself?
 
 
133008
Level 31 Chipist
kleeder
 
 
 
post #133008 :: 2020.12.20 10:30pm
  
  tennisers liēkd this
its in the bat

python mod2vic\converter.py ..\SONG.MOD --tempo 42 --output tune.s --title "unnamed song" --draw_graphics 0 && ^
 
 

LOGIN or REGISTER to add your own comments!