NEO

From Atariki

(Różnice między wersjami)
Jump to: navigation, search
Wersja z dnia 16:44, 25 wrz 2006
Epi (Dyskusja | wkład)

← Previous diff
Wersja z dnia 19:48, 26 wrz 2006
Epi (Dyskusja | wkład)
(Byx!)
Next diff →
Linia 26: Linia 26:
=== Dane songu === === Dane songu ===
-Każda linia w songu składa się z ośmiu bajtów, gdzie pierwsze cztery to numery paternów, a kolejne cztery - wartości transpozycji. Oprócz tego, na ścieżce pierwszej numer paternu większy od 127 oznacza skok do linii o numerze podanym w miejscu na wartość transpozycji.+Ułożone w kolejności:
 +* $80 bajtów oznaczających numery paternów na ścieżce 1,
 +* $80 bajtów transpozycji na ścieżce 1,
 +* ...
 +* $80 bajtów numerów paternów na ścieżce 4,
 +* $80 bajtów transpozycji na ścieżce 4.
=== Dane paternów === === Dane paternów ===

Wersja z dnia 19:48, 26 wrz 2006

Format modułu muzycznego obsługiwany przez program NeoTracker.

offsetdługośćopis
$0000$0003identyfikator: 'NEO' w ASCII
$0003$0001zarezerwowane (obecnie 0)
$0004$0001numer wersji programu koniecznej do poprawnego wczytania pliku ($10 - 1.12, $14 - 1.4+)
$0005$0001typ pliku: $8e
$0006$0028tytuł utworu (uzupełniony spacjami)
$002e$0001początkowa szybkość odtwarzania
$002f$0001numer sampla oznaczonego jako "long sample"
$0030$0080młodsze bajty adresów paternów
$00b0$0080starsze bajty adresów paternów
$0130$0400nazwy sampli
$0530$0040głośności sampli
$0570$0080długości sampli
$05f0$0080pozycje początku pętli
$0670$0400dane songu
$0a70$0002ilość danych paternów, powiększona o $4000
$0a72...dane paternów
......dane sampli

Poniższe informacje dotyczą wersji $14 formatu.

Dane songu

Ułożone w kolejności:

  • $80 bajtów oznaczających numery paternów na ścieżce 1,
  • $80 bajtów transpozycji na ścieżce 1,
  • ...
  • $80 bajtów numerów paternów na ścieżce 4,
  • $80 bajtów transpozycji na ścieżce 4.

Dane paternów

Grupy poleceń rozpoznawane są po najstarszych 2 bitach:

  • 00 - rozpoczęcie grania nuty o numerze zawartym w pozostałych bitach ($00-$3e). Następny bajt oznacza głośność ($00-$20); dodatkowo ustawienie siódmego bitu oznacza, że nastąpi jedynie zmiana wysokości dźwięku (sampel nie będzie zagrany od początku), a szóstego - że wystąpi dodatkowy bajt komendy efektu.
  • 01 - zmiana bieżącego instrumentu, numer zapisany w pozostałych bitach ($00-$3f).
  • 10 - puste linie, pomniejszona o 1 ilość zapisana w pozostałych bitach ($00-$3f).
  • 11 - puste linie ze zmianą głośności i ew. komendą efektu. Następny bajt oznacza głośność ($00-$20); dodatkowo ustawienie siódmego bitu oznacza, że nie występuje zmiana głośności, a szóstego - że wystąpi dodatkowy bajt komendy efektu.

Komenda efektu:

  • $00 - koniec paternu,
  • $0x - zmiana szybkości odtwarzania,
  • $1x - płynne ściszanie,
  • $2x - płynne zgłaśnianie,
  • $3x - portamento w dół,
  • $4x - portamento w górę.

Gdzie x oznacza parametr komendy.

Pojedynczy patern zajmuje od jednego do 256 bajtów.

Personal tools