antrykot Posted December 16, 2017 Share Posted December 16, 2017 (edited) Hi Sandor, Could you explain what kind of lowpass filter is Hardbass using, and what simplification did you use in order to implement it on Atari? Also, in your Java code SAMPLE_RATE is defined to be 1950 Hz, why not a more accurate value 1773447.0 / (8 * 114), (around 1944.57 Hz)? Edited December 16, 2017 by antrykot Quote Link to comment Share on other sites More sharing options...
Sandor / HARD Posted December 16, 2017 Author Share Posted December 16, 2017 (edited) Hi Sandor, Could you explain what kind of lowpass filter is Hardbass using, and what simplification did you use in order to implement it on Atari? Also, in your Java code SAMPLE_RATE is defined to be 1950 Hz, why not a more accurate value 1773447.0 / (8 * 114), (around 1944.57 Hz)? Hello, Thanks for your questions. > Could you explain what kind of lowpass filter is Hardbass using, and what simplification did you use in order to implement it on Atari? It's not a decent/standard low pass filter anymore as it's over simplified. First I experimented with FIR and IIR filters and various waveforms at around 16KHz in Java at 4bit. Of course I got amazing results. Then I started to lower the frequency and when I got to the real frequency I wanted to use it turned out that multiple waveforms made no real sense and the different filter implementations & configurations all sounded kind of the same at this low frequency. So I got the idea to drift away from a proper filter implementation as it was very resource hungry (they used multiple history values and had to re-calculate some values for their sample calculation each time you set the cutoff frequency). I thought I'd try a single history value and simplifying the reconfiguration step into taking the scaled down values & the new value from a simple short lookup table. (also simplified the number of steps at which I let cutoff set from 256 to 16 to save memory as it gave me similar results anyways) Then I realized this still sounded something like the lot more expensive proper filters I had implemented at this low frequency. So that's what I implemented in assembly and that's what became HARDBASS. > Also, in your Java code SAMPLE_RATE is defined to be 1950 Hz, why not a more accurate value 1773447.0 / (8 * 114), (around 1944.57 Hz)? I just calculated it as 50 frames * 39 updates (there's 39 char lines per PAL frame if you count all invisible char lines = 312 scan lines). Edited December 16, 2017 by Sandor / HARD Quote Link to comment Share on other sites More sharing options...
_The Doctor__ Posted December 17, 2017 Share Posted December 17, 2017 and there is the first clue to something to change for NTSC to work, I did notice that in PAL the slightly higher rate works out due to some cycling and other things so it really does sound as it should, even if you take something to the point of almost breaking it... as you pass that point you will here it affect the sound and strange noises will occur if you try to do way too much yet it tolerates it... I do like the fact that the machine will crawl rather than crash or wipe itself and other things out when you reach that point.... that allows you to go back and fine tune whatever you are brewing... Quote Link to comment Share on other sites More sharing options...
antrykot Posted December 18, 2017 Share Posted December 18, 2017 (edited) Thank you for your answer. I am going to rewrite some part of your Java implementation into C++ to understand it better and experiment with it. Edited December 18, 2017 by antrykot 2 Quote Link to comment Share on other sites More sharing options...
miker Posted June 14, 2018 Share Posted June 14, 2018 (edited) I've recently tried to build app with that gradle.Unfortulately I got this c:\Users\mikerro\.gradle\wrapper\dists\gradle-2.10-all\a4w5fzrkeut1ox71xslb49gst\gradle-2.10\bin>gradle --info Starting Build FAILURE: Build failed with an exception. * Where: Initialization script 'C:\Users\mikerro\.gradle\wrapper\dists\gradle-2.10-all\a4w5fzrkeut1ox71xslb49gst\gradle-2.10\init.d\build.gradle' line: 21 * What went wrong: A problem occurred evaluating initialization script. > Could not find method task() for arguments [{type=class org.gradle.api.tasks.Delete}, clean, build_2s8hpkpnry4hx2zjyrrk7fzc1$_run_closure3@18d7714] on build. * Try: Run with --stacktrace option to get the stack trace. Run with --debug option to get more log output. BUILD FAILED Total time: 2.751 secs c:\Users\mikerro\.gradle\wrapper\dists\gradle-2.10-all\a4w5fzrkeut1ox71xslb49gst\gradle-2.10\bin> I put in init.d directory following files: 2018-06-14 19:57 <DIR> .2018-06-14 19:57 <DIR> ..2017-11-25 18:21 1˙032 .gitignore2018-06-14 19:50 <DIR> .idea2018-06-14 19:50 <DIR> app2017-11-25 18:21 498 build.gradle2018-06-14 19:57 0 dir.txt2018-06-14 19:50 <DIR> example2018-06-14 19:50 <DIR> gradle2017-11-25 18:21 855 gradle.properties2017-11-25 18:21 1˙471 README.md2017-11-25 18:21 15 settings.gradle 6 File(s) 3˙871 bytes Am I doing something wrong? Edited June 14, 2018 by miker Quote Link to comment Share on other sites More sharing options...
+JAC! Posted June 25, 2018 Share Posted June 25, 2018 Hmm, I have no experience with gradle. But maybe this is a hint: https://stackoverflow.com/questions/37100254/gradle-could-not-find-method-for-arguments-on-root-project Quote Link to comment Share on other sites More sharing options...
Mr_Mary Posted November 30, 2018 Share Posted November 30, 2018 (edited) I'm also having issues with the tracker: FAILURE: Build failed with an exception. * What went wrong: A problem occurred configuring project ':app'. > Could not resolve all dependencies for configuration ':app:_debugCompile'. > Could not find com.android.support:appcompat-v7:24.2.1. Searched in the following locations: https://jcenter.bintray.com/com/android/support/appcompat-v7/24.2.1/app compat-v7-24.2.1.pom https://jcenter.bintray.com/com/android/support/appcompat-v7/24.2.1/app compat-v7-24.2.1.jar Required by: hardbass:app:unspecified > Could not find com.android.support:recyclerview-v7:24.2.1. Searched in the following locations: https://jcenter.bintray.com/com/android/support/recyclerview-v7/24.2.1/ recyclerview-v7-24.2.1.pom https://jcenter.bintray.com/com/android/support/recyclerview-v7/24.2.1/ recyclerview-v7-24.2.1.jar Required by: hardbass:app:unspecified I'm no coder, I just want some yoi and wub D: It wouldn't hurt to at least provide a compiled version of the tracker Edited November 30, 2018 by Mr_Mary Quote Link to comment Share on other sites More sharing options...
miker Posted November 30, 2018 Share Posted November 30, 2018 I don't try again... It made my system unstable and caused it crash. So, sorry, no. Wi32(64) port maybe? Quote Link to comment Share on other sites More sharing options...
Mr_Mary Posted December 3, 2018 Share Posted December 3, 2018 (edited) About compiling HARDBASS tracker... Including a compiled binary (courtesy of b00daw) File I/O seems to be borked under Android 7.1.2, works fine under 4,4,2 com.hardbass.hard.apk.zip Edited December 3, 2018 by Mr_Mary 3 Quote Link to comment Share on other sites More sharing options...
miker Posted December 4, 2018 Share Posted December 4, 2018 (edited) Cool! Now "only" find such a device that supports it. (Sorry, I'm too lazy) Edited December 4, 2018 by miker Quote Link to comment Share on other sites More sharing options...
Mr_Mary Posted December 4, 2018 Share Posted December 4, 2018 Apparently it works fine under Nox (android emu) with Android 4.4.2 Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.