Skip to content

fhisch/minicube64-audio-basics

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

+==================================================+
+                                                  +
+ Audio implementation for the Minicube64 emulator +
+    using FamiTone2 and FamiTone5                 +
+                                                  +
+==================================================+

This is a demo of using the FamiTone audio library with the Minicube64 fantasy
console emulator.

Note: this project and documentation is a work in progress. Not all files or
examples are present yet. See "to do" at the bottom of this doc.

OVERVIEW-----------------------------------------

The FamiTone driver files are "64cube_ft2" for FamiTone2d and "64cube_ft5" for
FamiTone5.

The .asm files are the main includes - put these near the bottom of your code,
before including song and sfx files.

The .inc files are zeropage variables. These must be placed inside an enum
starting at a zeropage address, e.g.:

  ENUM $0
  include "64cube_ft2.inc"
  ENDE

Differences between FamiTone versions:

FamiTone2d is lightweight but can't do a lot of effects. It is also somewhat
strict with formatting.

FamiTone5 has a lot more support for fancy effects, but at a cost of size and
possibly speed.


CONVERSION TOOLS---------------------------------

Music and SFX each need to be contained in their own separate files. When using
the following conversion tools, always be sure to use the -asm6 flag.

:: Music

  FamiTone2d: text2data.exe
  FamiTone5:  text2vol5.exe
  Usage: text2data.exe [music_file.txt] -asm6

  Converts a song exported as .txt to .asm. If you are using any DPCM samples,
  the tool will create an additional file

:: SFX

  FamiTone2d: nsf2data.exe
  FamiTone5:  nsf2data5.exe
  Usage: nsf2data.exe [sfx_file.nsf] -asm6

  Converts .nsf file to .asm.

LIMITATIONS AND CAVEATS--------------------------

:: FamiTone2d Limitations

:: FamiTone5 Limitations


DEMO AND EXAMPLE FILES---------------------------

:: FamiTone2d  ( ./ft2-demo/ )

    mc64_ft2audio_demo.s   - Contains both music and sound effects.
    mc64_ft2basic_music.s  - A bare minimum of code to have music playing.
    ft2testsong.asm        - Music created with FamiTracker and converted using
                             text2data.exe.
    ft2testsfx.asm         - Sound effects created with FamiTracker and
                             converted using nsf2data.exe.

:: FamiTone5 ( ./ft5-demo/ )

    mc64_ft5audio_demo.s   - Contains both music and sound effects.
    mc64_ft5basic_music.s  - A bare minimum of code to have music playing.
    ft5testsong.asm        - Music created with FamiTracker and converted using
                             text2vol5.exe.
    ft5testsfx.asm         - Sound effects created with FamiTracker and
                             converted using nsf2data5.exe.


ABOUT MINICUBE64---------------------------------

ABOUT FAMITONE-----------------------------------

FamiTone was originally written by Shiru 04'17. Versions 2d and 5 are
unofficial updates by Doug Fraker (nesdoug.com).

-------------------------------------------------
-------------------------------------------------
TO DO:
- add more info about the famitone utilities
- simple "how to" to make properly formatted files with FamiTracker,
  Musetracker, etc.
- "Bare minimum" examples:
-- ft2 sfx
-- all ft5 demos
- ft5 demo song and sfx files using ft5-specific features
- dpcm examples for both ft2 and ft5
- more credits and references
- probably other stuff but my cat still won't leave me alone

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published