Haujobb Amiga Framework released
category: code [glöplog]
Happy New Year!
As mentioned in our Evoke seminar on Modern Amiga Demo Cross-Development we were planning to make our demo framework publicly available. This has finally been done!
You can now find the release with complete documentation (currently 45 pages PDF, as well as HTML) on https://github.com/leifo/haujobb-amiga.
If you ever wanted to code that Amiga AGA demo, but didn't know the platform, or where to start; or you just wanted to sneak a peek at how we do our demos in Haujobb, then this is it.
Now is the time to get going. Code and debug on PC, sync with the Rocket tracker editor, and cross-compile for Amiga. Go for it!
As mentioned in our Evoke seminar on Modern Amiga Demo Cross-Development we were planning to make our demo framework publicly available. This has finally been done!
You can now find the release with complete documentation (currently 45 pages PDF, as well as HTML) on https://github.com/leifo/haujobb-amiga.
If you ever wanted to code that Amiga AGA demo, but didn't know the platform, or where to start; or you just wanted to sneak a peek at how we do our demos in Haujobb, then this is it.
Now is the time to get going. Code and debug on PC, sync with the Rocket tracker editor, and cross-compile for Amiga. Go for it!
nice!
Thanks.
thumbs up!
Nice! Kudos for releasing.
<3 Thank you!
Cool! Now go make a demo with it :)
nice going NoName for releasing this!
nice going NoName for releasing this!
Just made a successful partyprod with it, but I could not get anything that needs fread() to work on the Windows / QT Creator version. I did however get adpcm to play with some software rendering effects so it's a partial success :)
(on the amiga target that is)
Oh nice, a first glimpse of impact :) Feel free to share it with us, if you like. Regarding fread, check the streamInit and streamRead* from demo/shared/tools/stream.c which takes care of Endianness.
I was looking for an entry point to this platform for some time, and this one is straightforward to start with good installation manual. The biggest problem was to make custom music work. Finally I ended up with this ffmpeg command: ffmpeg -i input -map_metadata -1 -aflags +bitexact -acodec adpcm_ima_wav -ar 22050 out.wav
I had to check sources to realize it's still needed to cut out 'fact' or any other chunks between 'fmt ' and 'data'.
Also good to find OSC mode support for those with vampirized A600s.
Thanks for the amazing contribution!
I had to check sources to realize it's still needed to cut out 'fact' or any other chunks between 'fmt ' and 'data'.
Also good to find OSC mode support for those with vampirized A600s.
Thanks for the amazing contribution!
@zden: That's indeed a bit ugly. For Beam Riders e.g. we converted the track from 44.1kHz to 28.6kHz (which is the highest possible replay rate) and saved it with the default IMA ADPCM codec from Windows (not Microsoft ADPCM).
The Codec only offers 22 or 44kHz though, so we picked one of the two (the output only differs in frame size, so it doesn't really matter) and fixed the sample-rate in the wav-header with a hex-editor, so you can still play it everywhere.
If you load the resulting wav file with our adpcm code, it removes the individual frame chunks to create a continous bitstream so Kalms' adpcm player code can process it.
If FFMpeg stores more incompatible meta data, I should probably make the parser code more compatible. In many places the code is on a "it works in the way we use it" level ;)
The Codec only offers 22 or 44kHz though, so we picked one of the two (the output only differs in frame size, so it doesn't really matter) and fixed the sample-rate in the wav-header with a hex-editor, so you can still play it everywhere.
If you load the resulting wav file with our adpcm code, it removes the individual frame chunks to create a continous bitstream so Kalms' adpcm player code can process it.
If FFMpeg stores more incompatible meta data, I should probably make the parser code more compatible. In many places the code is on a "it works in the way we use it" level ;)
@zden: You are the first to hit the ceiling of the documentation, congratulations! Writing about the audio export is on the to-do list, and the combination of player and codec is still a bit fiddly. However, it is possible to save a directly usable 22khz ADPCM from within Goldwave. Thanks for the ffmpeg line; also to ham for sox. I will check both and include them with the docs on the next update.
And thanks for the kind feedback. I think we should quote you on your first sentence ;)
And thanks for the kind feedback. I think we should quote you on your first sentence ;)
@noname: I was excited how well it went from install to some production. Tried other solutions in the past, but lead nowhere so I always gave up. I didn't use your stream solution or Rocket yet, instead quickly hacked my tga loader to work on big-endian systems. Then ported a few draw routines and I could enjoy creating. With Vamp's performance, it was a lot of fun, even with fewer colors.
@ham: I tried higher kHz but seems I have to tweak replayer constants to play at correct speed. I rather won't touch it right now and experiment with the next prod. I'll check out SoX!
@ham: I tried higher kHz but seems I have to tweak replayer constants to play at correct speed. I rather won't touch it right now and experiment with the next prod. I'll check out SoX!
We updated the repo with a screenmode-example that covers over a dozen screenmodes, including
and many others.
Meanwhile, zden released his demo Amis Cope which uses mode 24 and works on accelerated OCS machines, including Vampire.
and many others.
Meanwhile, zden released his demo Amis Cope which uses mode 24 and works on accelerated OCS machines, including Vampire.
Keep on rocking NoNamE!
Awesome!
@Noname I'm not sure how hard it would be for you, but adding support for more modes initialized via RTG driver would be amazing. While I know so little about the system, I understood Elude demos works on my Vampy because of this support, and via HDMI. That would give me the ability to develop more than 5-bit gfx and watch it in crisp quality (while missing the charm of composite analog output :)).
This is really awesome. thanks
Great! There are too many that get lost in the boring startup phase. This puts an end to that!
anybody wanna share a properly working pre setupped 060 UAE config with the necessary hd images etc ?