latest music version
This commit is contained in:
parent
487c7d5b4c
commit
7f9e3b7396
|
|
@ -1,5 +1,5 @@
|
|||
@echo off
|
||||
bas2tap -a10 -spsgplay loader.bas loader.tap
|
||||
bas2tap -a10 -smoebius loader.bas loader.tap
|
||||
sjasmplus main.asm --lst=main.lst
|
||||
copy /b loader.tap+player.tap+page0.tap+page1.tap+page3.tap+page4.tap+page6.tap+page7.tap+splash.tap "moebius.tap"
|
||||
pause
|
||||
|
|
@ -220,22 +220,54 @@ vumeter:
|
|||
|
||||
|
||||
; not so hidden text
|
||||
db ".......................... hey there again!", 10, 13
|
||||
db "another arson? another arson!", 10, 13
|
||||
db "this time for the TurboSound FM! (2 x YM2203)", 10, 13
|
||||
db 10, 13
|
||||
db "player code - artemka", 10, 13
|
||||
db "splash screen - rui8bit", 10, 13
|
||||
db "music - Abstract 64, Alex Winston, Natt, nIk0, Pator and Rei8bit", 10, 13
|
||||
db "support and tools - AArt1526", 10, 13
|
||||
db 10, 13
|
||||
db "released at Xenium 2o25", 10, 13
|
||||
db 10, 13
|
||||
db "greets to everyone pushing the limits and keeping the scene alive! (and whatever ;)", 10, 13
|
||||
db "special thanks to CHRV for the TSFMPro board :)", 10, 13
|
||||
db 10, 13
|
||||
db 10, 13
|
||||
db "come to Multimatograf 2026 - the party that cares about the demoscene - spring 2026 - events.retroscene.org", 10, 13
|
||||
db "..........................", 10
|
||||
db "hey there again!", 10
|
||||
db "another arson? another arson!", 10
|
||||
db "this time for the ZX Spectrum 128 + TurboSound FM! (2 x YM2203)", 10
|
||||
db 10
|
||||
db "player code - artemka", 10
|
||||
db "splash screen - rui8bit", 10
|
||||
db "music - Abstract 64, Alex Winston, Natt, nIk0, Pator and Rei8bit", 10
|
||||
db "support and tools - AArt1526", 10
|
||||
db 10
|
||||
db "powered by Furnace Tracker =)", 10
|
||||
db 10
|
||||
db "released at Xenium 2o25", 10
|
||||
db 10
|
||||
db "greets to everyone pushing the limits and keeping the scene alive! (and whatever ;)", 10
|
||||
db "special thanks to CHRV for the TSFMPro board :)", 10
|
||||
db 10
|
||||
db 10
|
||||
db 10
|
||||
db "oh yea, we broke all your emulators!", 10
|
||||
db "unlike regular TS, the TSFM wasn't common at the speccy scene (its peak was when the device was", 10
|
||||
db "released, that is, mid-late 2000s), and most of features like CSM were not explored much", 10
|
||||
db "so, if you're going to fix your emulator, follow these rules: ", 10
|
||||
db " - use a decent FM emulation core! ymfm and Nuked-OPN2 are the best ones", 10
|
||||
db " - make sure you have implemented extended channel 3, SSG-EG and CSM timer functionality properly", 10
|
||||
db " - failure to do so will result in detuned chords and broken vocal chops at the start", 10
|
||||
db " - match the FM and AY/SSG mixing levels so single FM channel with square-like instrument at max volume", 10
|
||||
db " has the same amplitude as the SSG channel at max volume", 10
|
||||
db " (this seems to correspond to equal FM and SSG mixing levels in Chip Manager in Furnace)", 10
|
||||
db "good luck! ;)", 10
|
||||
db 10
|
||||
db "--artemka 21.08.2025", 10
|
||||
db 10
|
||||
db 10
|
||||
db 10
|
||||
db 10
|
||||
db 10
|
||||
db "p.s. try this choon at 60 Hz VBlank rate - it sounds **wonderful** :D", 10
|
||||
db 10
|
||||
db 10
|
||||
db 10
|
||||
db 10
|
||||
db 10
|
||||
db 10
|
||||
db "p.p.s. come to Multimatograf 2026 - the party that cares about the demoscene - spring 2026 - events.retroscene.org", 10
|
||||
|
||||
music_p0_ch3:
|
||||
incbin "tsfm_2108_0500_optimized/tsfm_2108_0500_optimized_ch3.bin"
|
||||
|
||||
code_end
|
||||
|
||||
|
|
@ -245,9 +277,9 @@ code_end
|
|||
emptytap "page0.tap"
|
||||
org 0xC000
|
||||
music_p0_ch12:
|
||||
incbin "tsfm_2108_0045_optimized/tsfm_2108_0045_optimized_ch12.bin"
|
||||
music_p0_ch10:
|
||||
incbin "tsfm_2108_0045_optimized/tsfm_2108_0045_optimized_ch10.bin"
|
||||
incbin "tsfm_2108_0500_optimized/tsfm_2108_0500_optimized_ch12.bin"
|
||||
music_p0_ch0:
|
||||
incbin "tsfm_2108_0500_optimized/tsfm_2108_0500_optimized_ch0.bin"
|
||||
savetap "page0.tap",CODE,"page0",0xC000,$-0xC000
|
||||
|
||||
; ------------------------------------------------
|
||||
|
|
@ -255,59 +287,55 @@ music_p0_ch10:
|
|||
emptytap "page1.tap"
|
||||
org 0xC000
|
||||
music_p0_ch14:
|
||||
incbin "tsfm_2108_0045_optimized/tsfm_2108_0045_optimized_ch14.bin"
|
||||
music_p0_ch2:
|
||||
incbin "tsfm_2108_0045_optimized/tsfm_2108_0045_optimized_ch2.bin"
|
||||
incbin "tsfm_2108_0500_optimized/tsfm_2108_0500_optimized_ch14.bin"
|
||||
music_p0_ch7:
|
||||
incbin "tsfm_2108_0500_optimized/tsfm_2108_0500_optimized_ch7.bin"
|
||||
music_p0_ch15:
|
||||
incbin "tsfm_2108_0500_optimized/tsfm_2108_0500_optimized_ch15.bin"
|
||||
savetap "page1.tap",CODE,"page1",0xC000,$-0xC000
|
||||
|
||||
; ------------------------------------------------
|
||||
page 3
|
||||
emptytap "page3.tap"
|
||||
org 0xC000
|
||||
music_p0_ch11:
|
||||
incbin "tsfm_2108_0045_optimized/tsfm_2108_0045_optimized_ch11.bin"
|
||||
music_p0_ch8:
|
||||
incbin "tsfm_2108_0045_optimized/tsfm_2108_0045_optimized_ch8.bin"
|
||||
music_p0_ch10:
|
||||
incbin "tsfm_2108_0500_optimized/tsfm_2108_0500_optimized_ch10.bin"
|
||||
music_p0_ch1:
|
||||
incbin "tsfm_2108_0045_optimized/tsfm_2108_0045_optimized_ch1.bin"
|
||||
music_p0_ch6:
|
||||
incbin "tsfm_2108_0045_optimized/tsfm_2108_0045_optimized_ch6.bin"
|
||||
incbin "tsfm_2108_0500_optimized/tsfm_2108_0500_optimized_ch1.bin"
|
||||
savetap "page3.tap",CODE,"page3",0xC000,$-0xC000
|
||||
|
||||
; ------------------------------------------------
|
||||
page 4
|
||||
emptytap "page4.tap"
|
||||
org 0xC000
|
||||
music_p0_ch9:
|
||||
incbin "tsfm_2108_0045_optimized/tsfm_2108_0045_optimized_ch9.bin"
|
||||
music_p0_ch4:
|
||||
incbin "tsfm_2108_0045_optimized/tsfm_2108_0045_optimized_ch4.bin"
|
||||
music_p0_ch13:
|
||||
incbin "tsfm_2108_0045_optimized/tsfm_2108_0045_optimized_ch13.bin"
|
||||
music_p0_ch15:
|
||||
incbin "tsfm_2108_0045_optimized/tsfm_2108_0045_optimized_ch15.bin"
|
||||
music_p0_ch5:
|
||||
incbin "tsfm_2108_0045_optimized/tsfm_2108_0045_optimized_ch5.bin"
|
||||
music_p0_ch7:
|
||||
incbin "tsfm_2108_0045_optimized/tsfm_2108_0045_optimized_ch7.bin"
|
||||
music_p0_ch0:
|
||||
incbin "tsfm_2108_0045_optimized/tsfm_2108_0045_optimized_ch0.bin"
|
||||
music_p0_ch3:
|
||||
incbin "tsfm_2108_0045_optimized/tsfm_2108_0045_optimized_ch3.bin"
|
||||
music_p0_ch2:
|
||||
incbin "tsfm_2108_0500_optimized/tsfm_2108_0500_optimized_ch2.bin"
|
||||
music_p0_ch8:
|
||||
incbin "tsfm_2108_0500_optimized/tsfm_2108_0500_optimized_ch8.bin"
|
||||
savetap "page4.tap",CODE,"page4",0xC000,$-0xC000
|
||||
|
||||
; ------------------------------------------------
|
||||
page 6
|
||||
emptytap "page6.tap"
|
||||
org 0xC000
|
||||
db 0
|
||||
music_p0_ch11:
|
||||
incbin "tsfm_2108_0500_optimized/tsfm_2108_0500_optimized_ch11.bin"
|
||||
music_p0_ch13:
|
||||
incbin "tsfm_2108_0500_optimized/tsfm_2108_0500_optimized_ch13.bin"
|
||||
music_p0_ch5:
|
||||
incbin "tsfm_2108_0500_optimized/tsfm_2108_0500_optimized_ch5.bin"
|
||||
savetap "page6.tap",CODE,"page6",0xC000,$-0xC000
|
||||
|
||||
; ------------------------------------------------
|
||||
page 7
|
||||
emptytap "page7.tap"
|
||||
org 0xC000
|
||||
db 0
|
||||
music_p0_ch4:
|
||||
incbin "tsfm_2108_0500_optimized/tsfm_2108_0500_optimized_ch4.bin"
|
||||
music_p0_ch6:
|
||||
incbin "tsfm_2108_0500_optimized/tsfm_2108_0500_optimized_ch6.bin"
|
||||
music_p0_ch9:
|
||||
incbin "tsfm_2108_0500_optimized/tsfm_2108_0500_optimized_ch9.bin"
|
||||
savetap "page7.tap",CODE,"page7",0xC000,$-0xC000
|
||||
|
||||
; splash screen
|
||||
|
|
|
|||
|
|
@ -43,22 +43,22 @@ ssg_r7 block 2, 0
|
|||
; instantinate structures
|
||||
align 256
|
||||
player_channels:
|
||||
channel_struct_t 4, music_p0_ch0 ; TODO: fill start offsets here
|
||||
channel_struct_t 0, music_p0_ch0 ; TODO: fill start offsets here
|
||||
channel_struct_t 3, music_p0_ch1
|
||||
channel_struct_t 1, music_p0_ch2
|
||||
channel_struct_t 4, music_p0_ch3
|
||||
channel_struct_t 4, music_p0_ch4
|
||||
channel_struct_t 4, music_p0_ch5
|
||||
channel_struct_t 3, music_p0_ch6
|
||||
channel_struct_t 4, music_p0_ch7
|
||||
channel_struct_t 3, music_p0_ch8
|
||||
channel_struct_t 4, music_p0_ch9
|
||||
channel_struct_t 0, music_p0_ch10
|
||||
channel_struct_t 3, music_p0_ch11
|
||||
channel_struct_t 4, music_p0_ch2
|
||||
channel_struct_t 0, music_p0_ch3
|
||||
channel_struct_t 7, music_p0_ch4
|
||||
channel_struct_t 6, music_p0_ch5
|
||||
channel_struct_t 7, music_p0_ch6
|
||||
channel_struct_t 1, music_p0_ch7
|
||||
channel_struct_t 4, music_p0_ch8
|
||||
channel_struct_t 7, music_p0_ch9
|
||||
channel_struct_t 3, music_p0_ch10
|
||||
channel_struct_t 6, music_p0_ch11
|
||||
channel_struct_t 0, music_p0_ch12
|
||||
channel_struct_t 4, music_p0_ch13
|
||||
channel_struct_t 6, music_p0_ch13
|
||||
channel_struct_t 1, music_p0_ch14
|
||||
channel_struct_t 4, music_p0_ch15
|
||||
channel_struct_t 1, music_p0_ch15
|
||||
|
||||
player_struct player_struct_t player_channels+(channel_struct_t*(3+0)+channel_struct_t.reg_extch3_fhi), player_channels+(channel_struct_t*(3+8)+channel_struct_t.reg_extch3_fhi)
|
||||
|
||||
|
|
|
|||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
|
@ -3,7 +3,7 @@
|
|||
define MUSIC_INC
|
||||
|
||||
TICK_RATE equ 50
|
||||
TOTAL_FRAMES equ 8091
|
||||
TOTAL_FRAMES equ 12455
|
||||
TOTAL_CHANNELS equ 16
|
||||
FILEPATH equ "tsfm_2108_0045_optimized/tsfm_2108_0045_optimized"
|
||||
FILEPATH equ "tsfm_2108_0500_optimized/tsfm_2108_0500_optimized"
|
||||
endif
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Loading…
Reference in a new issue