static void ProcessFile(string inputFilename) { Stream s = File.OpenRead(inputFilename); byte[] module = new byte[ASAP_Player.ModuleMax]; int module_len = s.Read(module, 0, module.Length); s.Close(); ASAP_Player asap = new ASAP_Player(); asap.Load(inputFilename, module, module_len); ASAP_ModuleInfo module_info = asap.GetModuleInfo(); if (song < 0) { song = module_info.default_song; } if (duration < 0) { duration = module_info.durations[song]; if (duration < 0) { duration = 180 * 1000; } } asap.PlaySong(song, duration); asap.MutePokeyChannels(muteMask); if (outputFilename == null) { int i = inputFilename.LastIndexOf('.'); outputFilename = inputFilename.Substring(0, i + 1) + (outputHeader ? "wav" : "raw"); } s = File.Create(outputFilename); byte[] buffer = new byte[8192]; if (outputHeader) { asap.GetWavHeader(buffer, format); s.Write(buffer, 0, ASAP_Player.WavHeaderBytes); } int n_bytes; do { n_bytes = asap.Generate(buffer, format); s.Write(buffer, 0, n_bytes); } while (n_bytes == buffer.Length); s.Close(); outputFilename = null; song = -1; duration = -1; }
static void ProcessFile(string inputFilename) { Stream s = File.OpenRead(inputFilename); byte[] module = new byte[ASAP_Player.ModuleMax]; int module_len = s.Read(module, 0, module.Length); s.Close(); ASAP_Player asap = new ASAP_Player(); asap.Load(inputFilename, module, module_len); ASAP_ModuleInfo module_info = asap.GetModuleInfo(); if (song < 0) song = module_info.default_song; if (duration < 0) { duration = module_info.durations[song]; if (duration < 0) duration = 180 * 1000; } asap.PlaySong(song, duration); asap.MutePokeyChannels(muteMask); if (outputFilename == null) { int i = inputFilename.LastIndexOf('.'); outputFilename = inputFilename.Substring(0, i + 1) + (outputHeader ? "wav" : "raw"); } s = File.Create(outputFilename); byte[] buffer = new byte[8192]; if (outputHeader) { asap.GetWavHeader(buffer, format); s.Write(buffer, 0, ASAP_Player.WavHeaderBytes); } int n_bytes; do { n_bytes = asap.Generate(buffer, format); s.Write(buffer, 0, n_bytes); } while (n_bytes == buffer.Length); s.Close(); outputFilename = null; song = -1; duration = -1; }
static void SetTime(string s) { duration = ASAP_Player.ParseDuration(s); }