nesdev.com
http://forums.nesdev.com/

FamiTone - audio library (release)
http://forums.nesdev.com/viewtopic.php?f=6&t=7329
Page 5 of 6

Author:  tepples [ Fri Mar 30, 2012 5:52 am ]
Post subject: 

I just realized: No duty envelope means no realistic hi-hats that alternate looped noise and regular noise. I can provide a sample of what I mean from another music engine, which maps pulse duty onto the volume envelopes and noise duty onto the arpeggio envelopes.

Author:  Shiru [ Fri Mar 30, 2012 6:25 am ]
Post subject: 

I know what you mean. I used it in my very first NES song, don't use it anymore, because it does not sounds realistic or good to me (should be noise+tone to be realistic). Certainly not that useful to be worth extra CPU time to process an extra envelope.

Author:  Denine [ Wed May 02, 2012 1:59 pm ]
Post subject: 

Hi.
I recently was forced to format my PC.I had backup of most files so I lost like, nothing.
But there's something odd.I can't use exporter plugin anymore.
Every time I try to export music, no file is produced.Also, by some weird reason, Text exporter is named "Custom exporter" when you want to export your music.Just no file is produced when I try to export music.
Yes, I downloaded famitone and famitracker, but it's still the same.Since Famitracke is working fine I wanted to ask for help here before famitracker's forum.
Any thoughts why this happens?

Edit:
Almost forgot: other files types exports just fine(NFS, NES etc).

Author:  Shiru [ Wed May 02, 2012 8:13 pm ]
Post subject: 

Which version of FamiTracker you have now?

Author:  Denine [ Thu May 03, 2012 2:39 am ]
Post subject: 

I tried 3 versions.(3.5, 3.6, and 3.7).
None works.It's same problem with every version.

Author:  Shiru [ Thu May 03, 2012 3:10 pm ]
Post subject: 

3.5 certainly won't work. 3.6 and above should work. Just tested the version I have currently, 0.3.8 beta 4 - it works fine. So I have no idea why it does not work for you, sorry.

Author:  Denine [ Tue May 08, 2012 8:47 am ]
Post subject: 

Eureka!
I found solution.
If anyone have same problem:
This problem was (probably) caused by Virut virus. After removing it, everything works perfectly.

Author:  darkhog [ Thu Nov 14, 2013 3:48 am ]
Post subject:  Re: FamiTone - audio library (release)

Hey, I've downloaded Famitone today and I've found out that demo doesn't behave when region is set to PAL in Nestopia (if switched when rom is running, it changes in pitch, if switched before it doesn't run). Is it problem with demo ROM or Famitone? If latter, when it'll be fixed?

//edit: From famitone.s

Code:
;reset APU, initialize FamiTone
;in: A 0 for PAL, not 0 for NTSC

FamiToneInit:
   cmp #0
   beq @pal
   lda #$ff
@pal:
   sta FT_PAL_ADJUST
   lda #$0f         ;enable channels, stop DMC
   sta APU_SND_CHN
   lda #$81         ;disable triangle length counter
   sta APU_TRI_LINEAR
   lda #$01         ;load noise length
   sta APU_NOISE_HI

   lda #$30         ;volumes to 0
   sta APU_PL1_VOL
   sta APU_PL2_VOL
   sta APU_NOISE_VOL
   lda #$08         ;no sweep
   sta APU_PL1_SWEEP
   sta APU_PL2_SWEEP

   lda #$ff
   sta FT_PULSE1_PREV
   sta FT_PULSE2_PREV



;stop music that currently plays (it is a part of FamiToneInit as well)

FamiToneMusicStop:   


I don't know much of assembly yet, but is FamitoneInit supposed to fall through into FamitoneMusicStop? Or is there missing rts?

Author:  Shiru [ Thu Nov 14, 2013 7:23 am ]
Post subject:  Re: FamiTone - audio library (release)

You should not switch PAL/NTSC in an emulator while a program run, because detection only happens at start up. Nestopia actually resets the program when you switch the region, isn't? Region detection does not work there indeed, don't know why. It works in FCEUX and Nintendulator, so maybe it is something with Nestopia itself?

PAL support in Famitone does not correct pitch, only speed.

Yes, the code falls through, it is how it supposed to be. Otherwise it would be just an extra jsr:rts, makes not much sense.

Author:  darkhog [ Thu Nov 14, 2013 3:56 pm ]
Post subject:  Re: FamiTone - audio library (release)

Also, would be possible to write plugin for Famitracker that would directly export to format used by Famitone, removing middleman (converting from text to data)? Because converter fails with "could not find frames" error or something like that. Here's text file generated by TextExporter:

Code:
# FamiTracker text export 0.4.2

# Song information
TITLE           "Advanced Adventure"
AUTHOR          "Chris"
COPYRIGHT       ""

# Song comment
COMMENT ""

# Global settings
MACHINE         0
FRAMERATE       0
EXPANSION       0
VIBRATO         1
SPLIT           32

# Macros
MACRO       0   0  -1  -1   0 : 15 15 14 14 13 13 12 12 11 11 10 10 9 9 8 8 7 7 6 6 5 5 4 4 3 3 2 2 1 1 0 0
MACRO       0   1  -1  -1   0 : 1 1 2 2 3 3 4 4 5 5 6 6 5 5 4 4
MACRO       0   2  -1  -1   0 : 10 10 8 6 4 2 0
MACRO       1   0  -1  -1   0 : 2 0 -3 0
MACRO       2   0  -1  -1   0 : 13 8 15 21 13 15
MACRO       2   1  -1  -1   0 : 0 0 0 0
MACRO       3   0  -1  -1   0 : -5 -5 -6 -6
MACRO       4   0  -1  -1   0 : 1 2 2 1

# DPCM samples

# Instruments
INST2A03   0     0  -1  -1  -1  -1 "Tri Angle"
INST2A03   1     1  -1  -1  -1  -1 "Buzzer"
INST2A03   2     2  -1  -1  -1  -1 "Hat"

# Tracks

TRACK  64   6 150 "New song"
COLUMNS : 1 1 1 1 1

ORDER 00 : 00 00 00 00 00
ORDER 01 : 00 00 00 00 00
ORDER 02 : 01 00 00 02 00
ORDER 03 : 02 00 00 01 00
ORDER 04 : 04 00 00 01 00
ORDER 05 : 00 01 00 00 00
ORDER 06 : 00 01 01 00 00
ORDER 07 : 03 02 01 00 00
ORDER 08 : 03 02 01 02 00
ORDER 09 : 01 02 01 02 00
ORDER 0A : 02 02 00 01 00
ORDER 0B : 04 01 00 02 00
ORDER 0C : 02 01 00 01 00
ORDER 0D : 01 01 00 00 00
ORDER 0E : 00 01 00 00 00

PATTERN 00
ROW 00 : --- .. . ... : ... .. . ... : C-5 00 . ... : ... .. . ... : ... .. . ...
ROW 01 : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 02 : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 03 : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 04 : ... .. . ... : ... .. . ... : E-5 00 . ... : ... .. . ... : ... .. . ...
ROW 05 : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 06 : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 07 : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 08 : ... .. . ... : ... .. . ... : G-5 00 . ... : ... .. . ... : ... .. . ...
ROW 09 : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 0A : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 0B : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 0C : ... .. . ... : ... .. . ... : B-5 00 . ... : ... .. . ... : ... .. . ...
ROW 0D : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 0E : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 0F : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 10 : ... .. . ... : ... .. . ... : C-5 00 . ... : ... .. . ... : ... .. . ...
ROW 11 : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 12 : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 13 : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 14 : ... .. . ... : ... .. . ... : E-5 00 . ... : ... .. . ... : ... .. . ...
ROW 15 : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 16 : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 17 : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 18 : ... .. . ... : ... .. . ... : G-5 00 . ... : ... .. . ... : ... .. . ...
ROW 19 : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 1A : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 1B : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 1C : ... .. . ... : ... .. . ... : E-5 00 . ... : ... .. . ... : ... .. . ...
ROW 1D : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 1E : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 1F : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 20 : ... .. . ... : ... .. . ... : C-5 00 . ... : ... .. . ... : ... .. . ...
ROW 21 : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 22 : ... .. . ... : ... .. . ... : E-5 00 . ... : ... .. . ... : ... .. . ...
ROW 23 : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 24 : ... .. . ... : ... .. . ... : A-5 00 . ... : ... .. . ... : ... .. . ...
ROW 25 : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 26 : ... .. . ... : ... .. . ... : C-6 00 . ... : ... .. . ... : ... .. . ...
ROW 27 : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 28 : ... .. . ... : ... .. . ... : C-5 00 . ... : ... .. . ... : ... .. . ...
ROW 29 : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 2A : ... .. . ... : ... .. . ... : E-5 00 . ... : ... .. . ... : ... .. . ...
ROW 2B : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 2C : ... .. . ... : ... .. . ... : G-5 00 . ... : ... .. . ... : ... .. . ...
ROW 2D : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 2E : ... .. . ... : ... .. . ... : D-5 00 . ... : ... .. . ... : ... .. . ...
ROW 2F : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 30 : ... .. . ... : ... .. . ... : C-5 00 . ... : ... .. . ... : ... .. . ...
ROW 31 : ... .. . ... : ... .. . ... : D-5 00 . ... : ... .. . ... : ... .. . ...
ROW 32 : ... .. . ... : ... .. . ... : E-5 00 . ... : ... .. . ... : ... .. . ...
ROW 33 : ... .. . ... : ... .. . ... : F-5 00 . ... : ... .. . ... : ... .. . ...
ROW 34 : ... .. . ... : ... .. . ... : C-5 00 . ... : ... .. . ... : ... .. . ...
ROW 35 : ... .. . ... : ... .. . ... : D-5 00 . ... : ... .. . ... : ... .. . ...
ROW 36 : ... .. . ... : ... .. . ... : E-5 00 . ... : ... .. . ... : ... .. . ...
ROW 37 : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 38 : ... .. . ... : ... .. . ... : C-5 00 . ... : ... .. . ... : ... .. . ...
ROW 39 : ... .. . ... : ... .. . ... : D-5 00 . ... : ... .. . ... : ... .. . ...
ROW 3A : ... .. . ... : ... .. . ... : E-5 00 . ... : ... .. . ... : ... .. . ...
ROW 3B : ... .. . ... : ... .. . ... : F-5 00 . ... : ... .. . ... : ... .. . ...
ROW 3C : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 3D : ... .. . ... : ... .. . ... : D-5 00 . ... : ... .. . ... : ... .. . ...
ROW 3E : ... .. . ... : ... .. . ... : C-5 00 . ... : ... .. . ... : ... .. . ...
ROW 3F : ... .. . ... : ... .. . ... : D-5 00 . ... : ... .. . ... : ... .. . ...

PATTERN 01
ROW 00 : C-1 01 . ... : C-4 00 . ... : ... .. . ... : C-# 02 . ... : ... .. . ...
ROW 01 : ... .. . ... : ... 00 . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 02 : ... .. . ... : ... 00 . ... : ... .. . ... : C-# 02 . ... : ... .. . ...
ROW 03 : ... .. . ... : ... 00 . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 04 : ... .. . ... : E-4 00 . ... : ... .. . ... : C-# 02 . ... : ... .. . ...
ROW 05 : ... .. . ... : ... 00 . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 06 : ... .. . ... : ... 00 . ... : ... .. . ... : C-# 02 . ... : ... .. . ...
ROW 07 : ... .. . ... : ... 00 . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 08 : ... .. . ... : G-4 00 . ... : ... .. . ... : C-# 02 . ... : ... .. . ...
ROW 09 : ... .. . ... : ... 00 . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 0A : ... .. . ... : ... 00 . ... : ... .. . ... : C-# 02 . ... : ... .. . ...
ROW 0B : ... .. . ... : ... 00 . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 0C : ... .. . ... : B-4 00 . ... : ... .. . ... : C-# 02 . ... : ... .. . ...
ROW 0D : ... .. . ... : ... 00 . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 0E : ... .. . ... : ... 00 . ... : ... .. . ... : C-# 02 . ... : ... .. . ...
ROW 0F : ... .. . ... : ... 00 . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 10 : ... .. . ... : C-4 00 . ... : ... .. . ... : C-# 02 . ... : ... .. . ...
ROW 11 : ... .. . ... : ... 00 . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 12 : ... .. . ... : ... 00 . ... : ... .. . ... : C-# 02 . ... : ... .. . ...
ROW 13 : ... .. . ... : ... 00 . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 14 : ... .. . ... : E-4 00 . ... : ... .. . ... : C-# 02 . ... : ... .. . ...
ROW 15 : ... .. . ... : ... 00 . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 16 : ... .. . ... : ... 00 . ... : ... .. . ... : C-# 02 . ... : ... .. . ...
ROW 17 : ... .. . ... : ... 00 . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 18 : ... .. . ... : G-4 00 . ... : ... .. . ... : C-# 02 . ... : ... .. . ...
ROW 19 : ... .. . ... : ... 00 . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 1A : ... .. . ... : ... 00 . ... : ... .. . ... : C-# 02 . ... : ... .. . ...
ROW 1B : ... .. . ... : ... 00 . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 1C : ... .. . ... : E-4 00 . ... : ... .. . ... : C-# 02 . ... : ... .. . ...
ROW 1D : ... .. . ... : ... 00 . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 1E : ... .. . ... : ... 00 . ... : ... .. . ... : C-# 02 . ... : ... .. . ...
ROW 1F : ... .. . ... : ... 00 . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 20 : ... .. . ... : C-4 00 . ... : ... .. . ... : C-# 02 . ... : ... .. . ...
ROW 21 : ... .. . ... : ... 00 . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 22 : ... .. . ... : E-4 00 . ... : ... .. . ... : C-# 02 . ... : ... .. . ...
ROW 23 : ... .. . ... : ... 00 . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 24 : ... .. . ... : A-4 00 . ... : ... .. . ... : C-# 02 . ... : ... .. . ...
ROW 25 : ... .. . ... : ... 00 . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 26 : ... .. . ... : C-5 00 . ... : ... .. . ... : C-# 02 . ... : ... .. . ...
ROW 27 : ... .. . ... : ... 00 . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 28 : ... .. . ... : C-4 00 . ... : ... .. . ... : C-# 02 . ... : ... .. . ...
ROW 29 : ... .. . ... : ... 00 . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 2A : ... .. . ... : E-4 00 . ... : ... .. . ... : C-# 02 . ... : ... .. . ...
ROW 2B : ... .. . ... : ... 00 . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 2C : ... .. . ... : G-4 00 . ... : ... .. . ... : C-# 02 . ... : ... .. . ...
ROW 2D : ... .. . ... : ... 00 . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 2E : ... .. . ... : D-4 00 . ... : ... .. . ... : C-# 02 . ... : ... .. . ...
ROW 2F : ... .. . ... : ... 00 . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 30 : ... .. . ... : C-4 00 . ... : ... .. . ... : C-# 02 . ... : ... .. . ...
ROW 31 : ... .. . ... : D-4 00 . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 32 : ... .. . ... : E-4 00 . ... : ... .. . ... : C-# 02 . ... : ... .. . ...
ROW 33 : ... .. . ... : F-4 00 . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 34 : ... .. . ... : C-4 00 . ... : ... .. . ... : C-# 02 . ... : ... .. . ...
ROW 35 : ... .. . ... : D-4 00 . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 36 : ... .. . ... : E-4 00 . ... : ... .. . ... : C-# 02 . ... : ... .. . ...
ROW 37 : ... .. . ... : ... 00 . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 38 : ... .. . ... : C-4 00 . ... : ... .. . ... : C-# 02 . ... : ... .. . ...
ROW 39 : ... .. . ... : D-4 00 . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 3A : ... .. . ... : E-4 00 . ... : ... .. . ... : C-# 02 . ... : ... .. . ...
ROW 3B : ... .. . ... : F-4 00 . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 3C : ... .. . ... : ... 00 . ... : ... .. . ... : C-# 02 . ... : ... .. . ...
ROW 3D : ... .. . ... : D-4 00 . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 3E : ... .. . ... : C-4 00 . ... : ... .. . ... : C-# 02 . ... : ... .. . ...
ROW 3F : ... .. . ... : D-4 00 . ... : ... .. . ... : C-# 02 . ... : ... .. . ...

PATTERN 02
ROW 00 : E-1 01 . ... : C-5 00 . ... : ... .. . ... : C-# 02 . ... : ... .. . ...
ROW 01 : ... .. . ... : ... 00 . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 02 : ... .. . ... : D-5 00 . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 03 : ... .. . ... : E-5 00 . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 04 : ... .. . ... : F-5 00 . ... : ... .. . ... : C-# 02 . ... : ... .. . ...
ROW 05 : ... .. . ... : ... 00 . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 06 : ... .. . ... : G-5 00 . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 07 : ... .. . ... : ... 00 . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 08 : ... .. . ... : A-5 00 . ... : ... .. . ... : C-# 02 . ... : ... .. . ...
ROW 09 : ... .. . ... : B-5 00 . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 0A : ... .. . ... : C-6 00 . ... : ... .. . ... : C-# 02 . ... : ... .. . ...
ROW 0B : ... .. . ... : ... 00 . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 0C : ... .. . ... : C-5 00 . ... : ... .. . ... : C-# 02 . ... : ... .. . ...
ROW 0D : ... .. . ... : D-5 00 . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 0E : ... .. . ... : E-5 00 . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 0F : ... .. . ... : F-5 00 . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 10 : ... .. . ... : ... 00 . ... : ... .. . ... : C-# 02 . ... : ... .. . ...
ROW 11 : ... .. . ... : ... 00 . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 12 : ... .. . ... : ... 00 . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 13 : ... .. . ... : ... 00 . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 14 : ... .. . ... : C-5 00 . ... : ... .. . ... : C-# 02 . ... : ... .. . ...
ROW 15 : ... .. . ... : D-5 00 . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 16 : ... .. . ... : E-5 00 . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 17 : ... .. . ... : F-5 00 . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 18 : ... .. . ... : ... 00 . ... : ... .. . ... : C-# 02 . ... : ... .. . ...
ROW 19 : ... .. . ... : ... 00 . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 1A : ... .. . ... : ... 00 . ... : ... .. . ... : C-# 02 . ... : ... .. . ...
ROW 1B : ... .. . ... : ... 00 . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 1C : ... .. . ... : C-4 00 . ... : ... .. . ... : C-# 02 . ... : ... .. . ...
ROW 1D : ... .. . ... : D-4 00 . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 1E : ... .. . ... : E-4 00 . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 1F : ... .. . ... : F-4 00 . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 20 : ... .. . ... : ... 00 . ... : ... .. . ... : C-# 02 . ... : ... .. . ...
ROW 21 : ... .. . ... : ... 00 . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 22 : ... .. . ... : ... 00 . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 23 : ... .. . ... : ... 00 . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 24 : ... .. . ... : B-5 00 . ... : ... .. . ... : C-# 02 . ... : ... .. . ...
ROW 25 : ... .. . ... : C-6 00 . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 26 : ... .. . ... : D-6 00 . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 27 : ... .. . ... : B-5 00 . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 28 : ... .. . ... : ... 00 . ... : ... .. . ... : C-# 02 . ... : ... .. . ...
ROW 29 : ... .. . ... : ... 00 . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 2A : ... .. . ... : ... 00 . ... : ... .. . ... : C-# 02 . ... : ... .. . ...
ROW 2B : ... .. . ... : ... 00 . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 2C : ... .. . ... : B-4 00 . ... : ... .. . ... : C-# 02 . ... : ... .. . ...
ROW 2D : ... .. . ... : C-5 00 . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 2E : ... .. . ... : D-5 00 . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 2F : ... .. . ... : B-4 00 . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 30 : ... .. . ... : ... 00 . ... : ... .. . ... : C-# 02 . ... : ... .. . ...
ROW 31 : ... .. . ... : ... 00 . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 32 : ... .. . ... : ... 00 . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 33 : ... .. . ... : ... 00 . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 34 : ... .. . ... : C-5 00 . ... : ... .. . ... : C-# 02 . ... : ... .. . ...
ROW 35 : ... .. . ... : D-5 00 . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 36 : ... .. . ... : E-5 00 . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 37 : ... .. . ... : ... 00 . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 38 : ... .. . ... : F-5 00 . ... : ... .. . ... : C-# 02 . ... : ... .. . ...
ROW 39 : ... .. . ... : G-5 00 . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 3A : ... .. . ... : A-5 00 . ... : ... .. . ... : C-# 02 . ... : ... .. . ...
ROW 3B : ... .. . ... : ... 00 . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 3C : ... .. . ... : C-5 00 . ... : ... .. . ... : C-# 02 . ... : ... .. . ...
ROW 3D : ... .. . ... : A-4 00 . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 3E : ... .. . ... : F-4 00 . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 3F : ... .. . ... : D-4 00 . ... : ... .. . ... : ... .. . ... : ... .. . ...

PATTERN 03
ROW 00 : G-5 00 . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 01 : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 02 : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 03 : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 04 : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 05 : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 06 : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 07 : E-5 00 . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 08 : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 09 : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 0A : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 0B : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 0C : D-4 00 . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 0D : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 0E : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 0F : E-4 00 . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 10 : G-4 00 . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 11 : D-4 00 . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 12 : B-4 00 . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 13 : G-4 00 . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 14 : E-4 00 . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 15 : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 16 : G-4 00 . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 17 : D-4 00 . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 18 : C-4 00 . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 19 : C-4 00 . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 1A : A-5 00 . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 1B : G-4 00 . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 1C : A-4 00 . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 1D : C-4 00 . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 1E : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 1F : D-4 00 . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 20 : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 21 : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 22 : F-4 00 . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 23 : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 24 : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 25 : E-5 00 . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 26 : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 27 : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 28 : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 29 : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 2A : D-4 00 . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 2B : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 2C : G-5 00 . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 2D : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 2E : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 2F : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 30 : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 31 : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 32 : C-4 00 . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 33 : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 34 : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 35 : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 36 : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 37 : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 38 : D-5 00 . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 39 : E-5 00 . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 3A : F-5 00 . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 3B : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 3C : A-4 00 . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 3D : F-4 00 . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 3E : D-4 00 . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 3F : A-3 00 . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...

PATTERN 04
ROW 00 : A-0 01 . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 01 : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 02 : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 03 : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 04 : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 05 : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 06 : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 07 : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 08 : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 09 : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 0A : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 0B : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 0C : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 0D : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 0E : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 0F : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 10 : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 11 : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 12 : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 13 : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 14 : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 15 : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 16 : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 17 : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 18 : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 19 : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 1A : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 1B : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 1C : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 1D : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 1E : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 1F : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 20 : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 21 : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 22 : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 23 : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 24 : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 25 : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 26 : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 27 : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 28 : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 29 : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 2A : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 2B : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 2C : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 2D : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 2E : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 2F : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 30 : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 31 : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 32 : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 33 : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 34 : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 35 : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 36 : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 37 : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 38 : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 39 : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 3A : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 3B : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 3C : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 3D : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 3E : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...
ROW 3F : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ... : ... .. . ...

# End of export

Author:  rainwarrior [ Thu Nov 14, 2013 4:12 pm ]
Post subject:  Re: FamiTone - audio library (release)

There's no need to paste the whole file here. Maybe use pastebin.

By the way, when I implemented the text export for Famitracker, I also implemented command line exporting as well, so you can automate the process with a batch script or whatnot.

Author:  Shiru [ Thu Nov 14, 2013 6:32 pm ]
Post subject:  Re: FamiTone - audio library (release)

There is no plans for new FamiTracker plugin, or any major changes in the original FamiTone. I do have plans for a completely new version that will improve efficiency of the engine, and will utilize the rainwarrior's text exporter rather than custom plugin.

Text files as a 'middle man' is actually a good thing, as any other tracker could output text in the same format to get compatibility with the engine. It has been done with the Musetracker.

Author:  tsone [ Tue Feb 25, 2014 9:07 pm ]
Post subject:  Re: FamiTone - audio library (release)

Shiru wrote:
... I do have plans for a completely new version that will improve efficiency of the engine, and will utilize the rainwarrior's text exporter rather than custom plugin.


FYI It's here! See thread: FamiTone2 audio library

Author:  sdm [ Sat Jan 30, 2016 9:47 am ]
Post subject:  Re: FamiTone - audio library (release)

I was able to finally implement FamiTone to my code. Unfortunately, nowhere I read how much memory it can take up.

FT_BASE_ADR = $0300 ;page in RAM, should be $xx00

In my code, I noticed that it is about 128 bytes.

Is this the maximum size ?, or may depend on the size of music?
I use only NES'a channels without any additional chips.

Author:  rainwarrior [ Sat Jan 30, 2016 1:55 pm ]
Post subject:  Re: FamiTone - audio library (release)

RAM usage is a fixed size.

ROM usage depends on the music.

CPU usage depends somewhat on the music/sfx playing but there is a maximum.

Page 5 of 6 All times are UTC - 7 hours
Powered by phpBB® Forum Software © phpBB Group
http://www.phpbb.com/