01 March 2021, 18:53 | #141 |
OCS forever!
Join Date: Mar 2019
Location: Birmingham, UK
Posts: 418
|
|
01 March 2021, 23:34 | #142 | |
OCS forever!
Join Date: Mar 2019
Location: Birmingham, UK
Posts: 418
|
Quote:
Code:
; Custom chip registers - try and catch predefined EQUs - if it fails sort this ; out yourself :) ifnd CUSTOM CUSTOM equ $dff000 endc ;CUSTOM ifnd INTREQR INTREQR equ $01e INTENAR equ $01c DMACON equ $096 INTENA equ $09a INTREQ equ $09c endc ;INTREQR ifnd AUD0LC AUD0LC equ $0a0 AUD0LEN equ $0a4 AUD0VOL equ $0a8 AUD1LC equ $0b0 AUD1LEN equ $0b4 AUD1VOL equ $0b8 AUD2LC equ $0c0 AUD2LEN equ $0c4 AUD2VOL equ $0c8 AUD3LC equ $0d0 AUD3LEN equ $0d4 AUD3VOL equ $0d8 endc ;AUD0LC ; Audio channel registers ifnd AUDLC AUDLC equ 0 AUDLEN equ 4 AUDPER equ 6 AUDVOL equ 8 endc ;AUDLC ; CIA registers ifnd CIAA CIAA equ $bfe001 CIAB equ $bfd000 endc ;CIAA ifnd CIATALO CIAPRA equ $000 CIATALO equ $400 CIATAHI equ $500 CIATBLO equ $600 CIATBHI equ $700 CIAICR equ $d00 CIACRA equ $e00 CIACRB equ $f00 endc ;CIATALO Separate objects/linking files is better aside ( ) Maybe it would be easier just to redefine all those values as something like Code:
__CUSTOM equ $dff000 ... __AUD0LC equ $0a0 ... __CIATALO equ $400 Last edited by Antiriad_UK; 02 March 2021 at 10:49. Reason: Updated source |
|
01 March 2021, 23:55 | #143 |
Lemon. / Core Design
Join Date: Mar 2016
Location: Tier 5
Posts: 1,211
|
My solution was to just delete them from the player source
Anyhow.. the MINIMAL setting lopped off about 8k from my test.exe Every little helps... |
02 March 2021, 00:10 | #144 |
OCS forever!
Join Date: Mar 2019
Location: Birmingham, UK
Posts: 418
|
|
20 March 2021, 23:52 | #145 |
Registered User
Join Date: Aug 2008
Location: Salisbury
Posts: 744
|
Found a bug. The 9 command isn't being honoured when using sample 0. The trick allows for playing a sample offset at different volumes. It works by running a setup line first with no note and the command with the instrument number. Playing a note with sample 0 then plays the sample at the previously set offset. For example..
--- 5 910 D-3 0 C20 There's a few variants to this aswell. I'll roll up a demo mod with them in tomorrow. |
21 March 2021, 01:44 | #146 | ||
Natteravn
Join Date: Nov 2009
Location: Herford / Germany
Posts: 2,496
|
Quote:
Which players or trackers are known to work like you said? Although, probably I will implement it neverthess, as long as it doesn't break other modules. Quote:
|
||
21 March 2021, 08:53 | #147 |
Registered User
Join Date: Aug 2008
Location: Salisbury
Posts: 744
|
Yeah it does look that way in the source but actually when it's used with a note the command gets executed twice. It plays the note at the offset and subsequently moves the offset on again.
Pretty sure all the versions of protracker have this "feature" including the original replay source. Bubsys clone also supports this along with the player 6.1 |
21 March 2021, 12:51 | #148 |
Registered User
Join Date: Oct 2009
Location: Germany
Posts: 3,303
|
|
21 March 2021, 13:27 | #149 |
Registered User
Join Date: Aug 2008
Location: Salisbury
Posts: 744
|
|
21 March 2021, 14:12 | #150 |
Natteravn
Join Date: Nov 2009
Location: Herford / Germany
Posts: 2,496
|
I think I made a mistake and optimised that feature away.
According to the original PT2.3B source it should work without a note. I got nothing to reproduce the problem, but maybe you want to test my fix from the latest beta-archive: http://sun.hasenbraten.de/~frank/TEST/ptplayer61beta.lha |
22 March 2021, 10:54 | #151 |
Mostly Harmless
Join Date: Aug 2004
Location: Northern Ireland
Posts: 1,109
|
Code:
- New function mt_loopfx() for playing looped sound effects. |
22 March 2021, 13:36 | #152 | |
Registered User
Join Date: Aug 2008
Location: Salisbury
Posts: 744
|
Quote:
Also double thanks for implementing the master volume changes (which I think I missed?). I've got smooth transitions between mods now. side note, I forgot I modified the mt_init to use a unified sample pack for all modules. i built a little app which finds all the unique samples (by name) in a colletion of modules, exports a single sample pack and adds references inside each module. Guess I'm mentioning it in case there was anybody else here who might need that? It just made the process of making the music for my game a lot easier as each mod can be written separately but also share samples. |
|
22 March 2021, 15:31 | #153 | |||
Natteravn
Join Date: Nov 2009
Location: Herford / Germany
Posts: 2,496
|
Quote:
Quote:
Quote:
But I don't understand why you have to change something in mt_init for it? mt_init allows the separate specification of module- and sample-pointers. |
|||
22 March 2021, 15:45 | #154 |
Registered User
Join Date: Aug 2008
Location: Salisbury
Posts: 744
|
So, its a little more complicated I guess. My tool runs through the following steps.
1. optimise all modules, removing unused patterns and samples 2. makes a list of all distinct samples and saves them in an indexed pack 3. using the index, it runs through all the modules replacing the first 4 bytes of the sample name with the index value within the sample pack 4. each module is then saved as pattern data only 5. on mt_init, I pass in the base address of the pack, as the init runs through each sample setting pointers, it grabs the index id from the sample name and uses that to find the required sample within the pack. the found sample is then loaded into the sample pointers. so basically without the tool its not really useable. once the game is done I'd happily wrap it up into something useable it anybody needs it. |
22 March 2021, 21:52 | #155 | ||
Natteravn
Join Date: Nov 2009
Location: Herford / Germany
Posts: 2,496
|
Quote:
Quote:
|
||
28 April 2021, 13:54 | #156 |
Registered User
Join Date: Aug 2008
Location: Salisbury
Posts: 744
|
hey Phx
Found a bug in the master volume control where it was effecting the volume of sound effects during my fades. I've done the following below which seems to have resolved it but I'm not sure it's correct. EDIT: OK, it's not quite working I don't think. I'm not sure how you detect if a channel is being used for an SFX or not. EDIT2: I'm an idiot.. code fixed Code:
move.w #$4000,INTENA(a6) ; adapt all channel volumes immediately move.l a0,mt_MasterVolTab(a4) tst.b mt_chan1+n_sfxpri(a4) bne .1 ; no sfx playing anyway move.w mt_chan1+n_volume(a4),d0 move.b (a0,d0.w),d0 move.w d0,AUD0VOL(a6) .1 tst.b mt_chan2+n_sfxpri(a4) bne .2 ; no sfx playing anyway move.w mt_chan2+n_volume(a4),d0 move.b (a0,d0.w),d0 move.w d0,AUD1VOL(a6) .2 tst.b mt_chan3+n_sfxpri(a4) bne .3 ; no sfx playing anyway move.w mt_chan3+n_volume(a4),d0 move.b (a0,d0.w),d0 move.w d0,AUD2VOL(a6) .3 tst.b mt_chan4+n_sfxpri(a4) bne .4 ; no sfx playing anyway move.w mt_chan4+n_volume(a4),d0 move.b (a0,d0.w),d0 move.w d0,AUD3VOL(a6) .4 move.w #$c000,INTENA(a6) Last edited by h0ffman; 28 April 2021 at 14:25. |
28 April 2021, 20:13 | #157 |
Natteravn
Join Date: Nov 2009
Location: Herford / Germany
Posts: 2,496
|
Yes, that's a bug. And a perfect fix. Thanks!
|
19 May 2021, 12:30 | #158 |
Registered User
Join Date: Feb 2018
Location: Poland
Posts: 352
|
|
19 May 2021, 20:52 | #159 | |
Natteravn
Join Date: Nov 2009
Location: Herford / Germany
Posts: 2,496
|
Quote:
Although, I cannot recommend that, because I don't want to guarantee that the offsets in the channel status structure remain the same in future versions. |
|
20 May 2021, 12:29 | #160 |
Registered User
Join Date: Feb 2018
Location: Poland
Posts: 352
|
I will look into this anyway , thanks!
|
Currently Active Users Viewing This Thread: 1 (0 members and 1 guests) | |
Thread Tools | |
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
MOD-player with external sound effects | phx | Coders. Asm / Hardware | 14 | 18 June 2012 10:41 |
Amiga Forever&Protracker bad sound | moriez | support.WinUAE | 14 | 06 January 2009 01:26 |
What was the first Amiga tracker to support external midi instruments | Kola | Amiga scene | 3 | 09 December 2008 19:20 |
Sound/Protracker package | Dunny | request.Apps | 3 | 23 July 2008 19:17 |
Sampled sound player? | cdoty | Coders. General | 7 | 25 August 2007 16:21 |
|
|