HuSIC

PSG, PCM, CD, HES, VGM...

Modérateurs : SirG, Redfield1, shubibiman, Laucops

Répondre
Avatar de l’utilisateur
MooZ
Administrateur
Messages : 2090
Inscription : jeu. 16 déc. 2004 14:25
Contact :

HuSIC

Message par MooZ »

Je viens de tomber sur les sources d'HuSIC sur GitHub! Quand je pense qu'à l'époque on n'avait que l'assembleur produit par HuC pour le code du player...
Avatar de l’utilisateur
touko
NECromancer
Messages : 2297
Inscription : lun. 31 mars 2008 14:32

Re: HuSIC

Message par touko »

je viens de voie ça sur ton site ..
Mais les coms/explications en coréen/jap (je sais pas) sont pas évident à comprendre :P
Avatar de l’utilisateur
Kaminari
Modérateur
Messages : 7049
Inscription : ven. 24 sept. 2004 19:36
Contact :

Re: HuSIC

Message par Kaminari »

Sympa, le site de Boukichi avait disparu depuis un bail.

Touko : il est jap. J'ai une vieille tradoche englishe de la version 0.14, je la benne ici pour info.

Code : Tout sélectionner

;
;  This is a tiny translation version of hus.txt.
;  It's there just only to be convenient for people
; who cannot understand Japanese language very well.
;  There is no warranty on the correctness.
; So, for sure, read the original text (written in Japanese language).
;  Always original text is preferred than this tiny trasnslation
; on any differences.
;

///////// HuSIC for PCE //////////// 
/  A Tool of Creating Music on PCE /
/ ver 0.14, Programmed by BouKiCHi /
////////////////////////////////////

 * Usage
  
  In first of all, prepare and setup "HuC 3.20".
  Actually, you need pceas.exe and libraries.
  
  Put 
  	pcewave.h(included in this package),
  	effect.h, songdata.h (data generated by mckc)
  in a same directory, and exec
  	pceas huc.s
  Or you can use make_pce.bat to assemble.
  
  As a preparation to enable this, you need setup include files and 
  environment variable(s) point to them.
  For example, you need to do
  	set PCE_INCLUDE=c:\some\where\huc\include\pce
  or so. (the place is just a example. set the right location instead.)
  For more details, read documents of "HuC 3.20".


 * Current status
  
  It has
  	- 6ch monophonic
  	- software volume envelope
  	- wave change(modify?)
  	- noise mode (4,5ch)


 * Description about local extension commands
  
  - $f2,switch
          switch=$00  : noise off
          switch=$01  : noise on
      In case of noise, octave becomes invalid. (valid only lower 4bit)
      And, valid only for 4ch and 5ch becauseof hardware limitaion.
  
  - $f1,waveformnumber
      Set wave-form from table.
      The waveformnumber means location in table.
      (stored in same way with envelope data and so on)
  
  - $f0,pan-volume
      Set volume per channel.
          higher 4 bit = left channel,  lower 4 bit = right channel
          0 = lowest,  15 = maximum
  
  - $ef,XPCM
          XPCM=1  : XPCM mode, use 6th channel
  
  - $ee,bank-number,address(lower 8bit),address(higher 8bit)
      Change bank which contain sequence data.
  
  - $ed,mode
      Set LFO mode. (stop LFO with 255)
          0 = no LFO
          1 = track_A + modulation_data
          2 = track_A + modulation_data*16(4bit left shift)
          3 = track_A + modulation_data*256(8bit left shift)
      waveform data of track_B is used as modulation_data.
      In this case, waveform data are treated as signed 5bit values.
      * While LFO is enabled, track_B is muted.
  
  - $ec,LFO-frequency
      frequency = 3.58MHz / (32 * track_B_frequency * LFO_frequency)


 * Attention when change bank
  
  Cannot use repeat command over banks.


 * History
  
  ver 0.01  2004-02-29-
    It was made basical parts in a rush.
    It wasted a lot of time until I found HuC doesn't accept KANJI in comment.
  
  ver 0.02  2004-03-10
    Changed compiler to HuC 3.20.
    Fixed sound-note was wrong.
    Changed the way to load data.
    Enabled volume command.
  
  ver 0.03  2004-03-11
    Now it has 6 channels.
    Added software volume envelope command.
    Added following extension commands:
    	$F2 command (noise setting command)   valid only on 4,5ch.
    	$F1 command (change wave-form command) valid on all channel.
  
  ver 0.04  2004-03-13
    Fixed notes were half upper in wrong.
    Fixed initialize routine of wave-form.
  
  ver 0.05  2004-03-14
    Added pitch envelope command.
    Added de-tune command.
  
  ver 0.06  2004-03-15
    Changed the way to control volume.
    Added extended pan command($F0).
  
  ver 0.07  2004-03-23
    Added repeat command. ($A0, $A1)
  
  ver 0.08  2004-04-06
    Changed maximum value of volume from 15 to 31.
    Removed pcewave.h. Renamed to pce_data_table.
  
  ver 0.08a 2004-04-09
    Added MP command provisionally.
  
  ver 0.08b 2004-04-10
    Changed action of noise-command-off to return to wave-form mode.
  
  ver 0.09  2004-04-13
    Widened noise freqency range. (from 00h to 1Fh)
    Made noise to support pitch envelope.
    Introduced XPCM(PCM function using DirectD/A driven by timer)
      (it use 6th-ch. it's on with $ef=1)
    Now driver routine is driven by VSYNC interrupt.
  
  ver 0.10  2004-04-17
    Added $EE command(bank change).
      the form is  $EE, bank, next sequence data.
    To adapt to the above, require bank number also for music data pointer now.
    Improved the data structure size calculation method when generate HES.
  
  ver 0.10(without XPCM)  2004-05-05
    Test for systems which do not have enough speed (or do not support PCM).
  
  ver 0.11 2004-05-27
    Added LFO function.
    Decreased frequency table to 16.
  
  ver 0.12 2004-05-28
    Lowered frequency table 1 octave.
  
  ver 0.12a 2004-10-19
    Fixed a problem cannot access to data area(including tone) when bank change.
  
  ver 0.13 2004-10-23
    Ditto for other place(s).
  
  ver 0.14 2005-01-19
    Fixed point which was not work LFO trigger.


 * Conventional notes
  
  - You are free in to redistribute, to modify, and to use.
  - Interesting data and cool data are invited.
  - Any ideas are invited.
Avatar de l’utilisateur
touko
NECromancer
Messages : 2297
Inscription : lun. 31 mars 2008 14:32

Re: HuSIC

Message par touko »

Merci c'est cool :wink:
Répondre