Arkos Tracker 2 - Released!

Started by Targhan, 15:38, 05 November 17

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Targhan

Utility, else I wouldn't have talked about it in this thread :).

Quote from: reidrac on 12:51, 21 November 20I use Arkos 2 now in three platforms: CPC, MSX and ZX Spectrum (WIP)
Glad the software was useful to you!
Targhan/Arkos

Arkos Tracker 2.0.1 now released! - Follow the news on Twitter!
Disark - A cross-platform Z80 disassembler/source converter
FDC Tool 1.1 - Read Amsdos files without the system

Imperial Mahjong
Orion Prime

Targhan

It is my pleasure to annonce a new version of Arkos Tracker 2! The v2.0.1 doesn't have many new features, but important bug fixes on some players, and a new 6502 player conversion for Atari 8 bits (XE/XL)! The family is getting bigger! Yes, more and more people are now using AT2!

The bug fixes are important, especially if you are using the AKY player (don't worry, the player is fine, but you should generate your songs again, just to be safe).

Check the changelog more for info!

Download the software here!
Targhan/Arkos

Arkos Tracker 2.0.1 now released! - Follow the news on Twitter!
Disark - A cross-platform Z80 disassembler/source converter
FDC Tool 1.1 - Read Amsdos files without the system

Imperial Mahjong
Orion Prime

PulkoMandy

I'm surprised that the 6502 version is forthe Atari XE/XL (which doesn't use the AY soundchip?) and not for the Oric (which does)?

Targhan

The Apple 2 AND Oric AKY players have already been present for at least a year.
A fellow Atari XE/XL developer created a new 6502 AKY player dedicated to an AY/YM extension that has just been released (SONari). According to what he said, his player is more optimized than the existing 6502 one.
Targhan/Arkos

Arkos Tracker 2.0.1 now released! - Follow the news on Twitter!
Disark - A cross-platform Z80 disassembler/source converter
FDC Tool 1.1 - Read Amsdos files without the system

Imperial Mahjong
Orion Prime

skylas

What is the best format to make in Arkos Tracker 2 for CPC 6128 in order to add music to a BASIC program? Aks probably?
Web: https://amstradsakis.blogspot.com
Twitter: https://twitter.com/AmstradSakis
My programs (only BASIC):
RETRO-LOADSHEET ON AMSTRAD CPC!
PENALTY KICKS!
CAPITAL QUIZ!
CAPITAL QUIZ 2! (Reverse edition)
HEADS OR TAILS (ΚΟΡΩΝΑ/ΓΡΑΜΜΑΤΑ)
HEART CHASER 1,2,3!
BARBOUTI!
STROOPIE!
BUDRUMI!
ART WAR!
BATTLE OF LENINGRAD!

Targhan

Quote from: skylas on 04:54, 27 March 21What is the best format to make in Arkos Tracker 2 for CPC 6128 in order to add music to a BASIC program? Aks probably?
There is already a ready to use AKG player for Basic, under interruption. Simply check the tutorial here, it's very simple to use. You can even add SFXs! So why hesitate? :)
Targhan/Arkos

Arkos Tracker 2.0.1 now released! - Follow the news on Twitter!
Disark - A cross-platform Z80 disassembler/source converter
FDC Tool 1.1 - Read Amsdos files without the system

Imperial Mahjong
Orion Prime

skylas

Quote from: Targhan on 21:52, 27 March 21
There is already a ready to use AKG player for Basic, under interruption. Simply check the tutorial here, it's very simple to use. You can even add SFXs! So why hesitate? :)
Thank you!
Web: https://amstradsakis.blogspot.com
Twitter: https://twitter.com/AmstradSakis
My programs (only BASIC):
RETRO-LOADSHEET ON AMSTRAD CPC!
PENALTY KICKS!
CAPITAL QUIZ!
CAPITAL QUIZ 2! (Reverse edition)
HEADS OR TAILS (ΚΟΡΩΝΑ/ΓΡΑΜΜΑΤΑ)
HEART CHASER 1,2,3!
BARBOUTI!
STROOPIE!
BUDRUMI!
ART WAR!
BATTLE OF LENINGRAD!

skylas

#332
Maybe my question is silly, but I cant understand it completely. @Targhan
I would like to make the program play an sfx sound only, for example number 5.
10 MEMORY &6FFF
20 music=&7000
30 sfx=&9000
40 player=&9500
50 LOAD"music.akg",music
60 LOAD"sfx.akx",sfx
70 LOAD"player.bin",player 
75 GOTO 90
80 CALL player,music,0   
90 CALL player+6,sfx 
120 CALL player+9,5,channel,0


How is that possible?
Web: https://amstradsakis.blogspot.com
Twitter: https://twitter.com/AmstradSakis
My programs (only BASIC):
RETRO-LOADSHEET ON AMSTRAD CPC!
PENALTY KICKS!
CAPITAL QUIZ!
CAPITAL QUIZ 2! (Reverse edition)
HEADS OR TAILS (ΚΟΡΩΝΑ/ΓΡΑΜΜΑΤΑ)
HEART CHASER 1,2,3!
BARBOUTI!
STROOPIE!
BUDRUMI!
ART WAR!
BATTLE OF LENINGRAD!

Targhan

At any time in your program (after the song has been started in line 90), simply call the SFX player:
CALL player+9,5,channel,0
With "channel" being 0, 1 or 2. "5" being the sound effect number 5, "0" being the inverted volume (0=full volume, 16=mute).

That's it. It is clearer now?

The player is run in the background, so there is nothing your program has to care about. Only make the call above to play a sfx (for example when your character jump, dies, etc.).
Targhan/Arkos

Arkos Tracker 2.0.1 now released! - Follow the news on Twitter!
Disark - A cross-platform Z80 disassembler/source converter
FDC Tool 1.1 - Read Amsdos files without the system

Imperial Mahjong
Orion Prime

GUNHED

Quote from: Targhan on 17:47, 21 March 21
Download the software here!
Doesn't work. Let's hope it's temporary.
http://futureos.de --> Get the revolutionary FutureOS (Update: 2022.03.09)
http://futureos.cpc-live.com/files/LambdaSpeak_RSX_by_TFM.zip --> Get the RSX-ROM for LambdaSpeak :-) (Updated: 2021.12.26)

skylas


Thx for your answer. Sorry, I corrected a bit the code when you were answering, but no big difference.
I want to try the sfx sound only, without hearing the music, thats why i used
75 GOTO 90
to bypass line 80, but this does not seem to work.
Maybe I can enter an empty AKG file, so that only SFX sounds will play?
Web: https://amstradsakis.blogspot.com
Twitter: https://twitter.com/AmstradSakis
My programs (only BASIC):
RETRO-LOADSHEET ON AMSTRAD CPC!
PENALTY KICKS!
CAPITAL QUIZ!
CAPITAL QUIZ 2! (Reverse edition)
HEADS OR TAILS (ΚΟΡΩΝΑ/ΓΡΑΜΜΑΤΑ)
HEART CHASER 1,2,3!
BARBOUTI!
STROOPIE!
BUDRUMI!
ART WAR!
BATTLE OF LENINGRAD!

Targhan

Quote from: GUNHED on 19:34, 20 April 21Doesn't work. Let's hope it's temporary.
It does now at least, I successfully downloaded all 4 versions.

Quote from: skylas on 19:40, 20 April 21Maybe I can enter an empty AKG file, so that only SFX sounds will play?
Yes. You tried to bypassed the whole player :). It doesn't work this way.
As stated in the documentation :

QuoteThe sound effects will only be heard if the music is playing! Once the music is stopped, the sound effects will not be played.

So if you don't want any music but only sfx, simply load an empty AKG music. The memory overhead will be very very small, don't worry.
Targhan/Arkos

Arkos Tracker 2.0.1 now released! - Follow the news on Twitter!
Disark - A cross-platform Z80 disassembler/source converter
FDC Tool 1.1 - Read Amsdos files without the system

Imperial Mahjong
Orion Prime

skylas

Web: https://amstradsakis.blogspot.com
Twitter: https://twitter.com/AmstradSakis
My programs (only BASIC):
RETRO-LOADSHEET ON AMSTRAD CPC!
PENALTY KICKS!
CAPITAL QUIZ!
CAPITAL QUIZ 2! (Reverse edition)
HEADS OR TAILS (ΚΟΡΩΝΑ/ΓΡΑΜΜΑΤΑ)
HEART CHASER 1,2,3!
BARBOUTI!
STROOPIE!
BUDRUMI!
ART WAR!
BATTLE OF LENINGRAD!

GUNHED

Link still broken, points to random page in forum. Please provide clear letters.
http://futureos.de --> Get the revolutionary FutureOS (Update: 2022.03.09)
http://futureos.cpc-live.com/files/LambdaSpeak_RSX_by_TFM.zip --> Get the RSX-ROM for LambdaSpeak :-) (Updated: 2021.12.26)

Targhan

Quote from: GUNHED on 22:16, 20 April 21Link still broken, points to random page in forum. Please provide clear letters
What is broken, the links from this forum page or links from the AT website? I just tried all of them, they work fine... And I'm under Linux using an obscure browser :).
Targhan/Arkos

Arkos Tracker 2.0.1 now released! - Follow the news on Twitter!
Disark - A cross-platform Z80 disassembler/source converter
FDC Tool 1.1 - Read Amsdos files without the system

Imperial Mahjong
Orion Prime

pelrun

That's a known forum bug, links that have custom text can get replaced with links from other posts. Doesn't always happen, and different people will see different things.

In any case, the real link is http://www.julien-nevo.com/arkostracker/index.php/using-interruption-player-with-cpc-basic/.

skylas

Hi again,
Do Arkos tracker has a pause option for the song being played?
I am asking because I am experimentining in making a something like text-adventure, that will include loading SCRs many times. It seems that when AMSTRAD plays the song and simultaneously tries to load the SCR, we don't hear the song in the proper way. One solution could be the pause, I have other solutions in mind also, but I thought that maybe a pause could an option if it is available.
Web: https://amstradsakis.blogspot.com
Twitter: https://twitter.com/AmstradSakis
My programs (only BASIC):
RETRO-LOADSHEET ON AMSTRAD CPC!
PENALTY KICKS!
CAPITAL QUIZ!
CAPITAL QUIZ 2! (Reverse edition)
HEADS OR TAILS (ΚΟΡΩΝΑ/ΓΡΑΜΜΑΤΑ)
HEART CHASER 1,2,3!
BARBOUTI!
STROOPIE!
BUDRUMI!
ART WAR!
BATTLE OF LENINGRAD!

Targhan

There is no built-in pause option, but that's probably because you can already do it without :).
Simply call the "stop" function. It only stops the sound and never resets anything in the song. Then, when you want to resume the song, simple call the play function again. I didn't test it, but it should work :).
Targhan/Arkos

Arkos Tracker 2.0.1 now released! - Follow the news on Twitter!
Disark - A cross-platform Z80 disassembler/source converter
FDC Tool 1.1 - Read Amsdos files without the system

Imperial Mahjong
Orion Prime

teopl

I think stop does reset the song but I really don't remember.

I looked at my implementation for pause and this is what worked for me:

- I have "is_paused" flag
- when "is_paused" is 0 => "call _PLY_AKM_PLAY" (or whatever player you use)
- when "is_paused" is 1 => simply *don't* "call _PLY_AKM_PLAY" and it will not progress through the song
- make sure that setting "is_paused" flag and "call _PLY_AKM_PLAY" is done from same "thread" i.e. interrupt handler function.

But even if you do not pause while loading screen it should be possible to play song at the same time (if last point is done correctly and interrupt handler function does not take too long).


Targhan

No, the stop doesn't do anything but stop the sound. It doesn't need to do anything else, because there is the init function if you want to start/restart.

I'm pretty sure what I said will work. Simple call the stop, and then the play (WITHOUT calling the init method on restart) whenever you're ready.

What you are proposing is layer of indirection to prevent from playing the song from a simple flag, which is of course a good idea. But it doesn't meddle with the player itself, which proves my point :).
Targhan/Arkos

Arkos Tracker 2.0.1 now released! - Follow the news on Twitter!
Disark - A cross-platform Z80 disassembler/source converter
FDC Tool 1.1 - Read Amsdos files without the system

Imperial Mahjong
Orion Prime

cpcitor

The "is_paused" flag of teopl is a good idea, especially when playing on interrupts it can be easier than disabling/reenabling the interrupt handler.

Yet simply not calling _PLY_AK*PLAY will in many cases let the chip continue to emit a continuous signal, like a sustained note.

*PLY_AK*STOP should be understood as "just silence the chip" because it does just that and nothing else.

To pause a music in all cases you indeed need both:

(1) silence the chip with *PLY_AK*STOP
(2) don't continue to regularly play bits of the song, so no longer call *PKY_AK*PLAY (e.g. with the is_paused flag).

When you set is_paused to false and thus call *PKY_AK*PLAY again, the music will just continue as expected.

(If one wanted to play the song from the start, one would want to call *PLY_AK*INIT at any time.)
Had a CPC since 1985, currently software dev professional, including embedded systems.

I made in 2013 the first CPC cross-dev environment that auto-installs C compiler and tools: cpc-dev-tool-chain: a portable toolchain for C/ASM development targetting CPC, later forked into CPCTelera.

skylas

Quote from: Targhan on 00:13, 12 May 21
No, the stop doesn't do anything but stop the sound. It doesn't need to do anything else, because there is the init function if you want to start/restart.

I'm pretty sure what I said will work. Simple call the stop, and then the play (WITHOUT calling the init method on restart) whenever you're ready.
Thank you all for your answers!
So, in an example while the song is being played):
call player+3:load"1.scr":call player,music, 0  .   
But this seems to restart the song, maybe I didnt understand well something
Web: https://amstradsakis.blogspot.com
Twitter: https://twitter.com/AmstradSakis
My programs (only BASIC):
RETRO-LOADSHEET ON AMSTRAD CPC!
PENALTY KICKS!
CAPITAL QUIZ!
CAPITAL QUIZ 2! (Reverse edition)
HEADS OR TAILS (ΚΟΡΩΝΑ/ΓΡΑΜΜΑΤΑ)
HEART CHASER 1,2,3!
BARBOUTI!
STROOPIE!
BUDRUMI!
ART WAR!
BATTLE OF LENINGRAD!

Targhan

No no, you're also restarting the song with the second call. But the first call is a 'play frame', which is not logical either.

Just do this:
call player +6    ;stop sound
;load screen
loop
call player +3    ;play frame
;wait for next vbl
jr loop
Targhan/Arkos

Arkos Tracker 2.0.1 now released! - Follow the news on Twitter!
Disark - A cross-platform Z80 disassembler/source converter
FDC Tool 1.1 - Read Amsdos files without the system

Imperial Mahjong
Orion Prime

manossg

I am loving using this tracker, congratulations to Targhan!

I have some questions:
1) There are some nice hard basses sounds included in the software and I would like to use these, but these don't seem to be affected by the various effects, including volume commands. Am I doing something wrong?
2) Are there any instrument packs available with more AY goodness? I am trying to create my own, but I end up with messy/scratchy sounds instead and only rarely something barely usable.

Targhan

Thanks!

Quote from: manossg on 11:03, 16 May 211) There are some nice hard basses sounds included in the software and I would like to use these, but these don't seem to be affected by the various effects, including volume commands. Am I doing something wrong?

Hardware envelopes are a "special" volume which cannot be modified by any volume commands. This is a limitation of the PSG! By using an hardware envelope, you basically tell the PSG "handle automatically the volume by yourself". So it cannot be used along with any volume variation. Technically speaking, you put "16" (bit 5 to 1) in the volume register. At that moment, the other volume bits (to "build" a volume from 0 to 15) are ignored, so it is not possible to mix "software" and "hardware" volume. However, all the other effects (pitch, etc.) can apply.

Quote from: manossg on 11:03, 16 May 212) Are there any instrument packs available with more AY goodness? I am trying to create my own, but I end up with messy/scratchy sounds instead and only rarely something barely usable.

I strongly suggest you continue experimenting, because this is how you'll get your own sounds and recognizable style. My advice is actually to NEVER use pre-existing sounds, but only create new from scratch. However, this can prove difficult at first, so:
- You can get inspiration from the many songs in the "arkos tracker" and "starkos" folder in the "songs" folder.
- You can also use the "Tools > YM Analyzer" and import YM songs you like. You can dissect them, extract sounds from them and use them in your own songs, or at least learn from them.
Targhan/Arkos

Arkos Tracker 2.0.1 now released! - Follow the news on Twitter!
Disark - A cross-platform Z80 disassembler/source converter
FDC Tool 1.1 - Read Amsdos files without the system

Imperial Mahjong
Orion Prime

Powered by SMFPacks Menu Editor Mod