By random I came across a funny video on youtube showing the basics behind a simple raycaster like Wolfenstein 3D. I know the mathematics behind it for real rayshading and on a real Amiga it’s awefuly slow. So for me it was interesting which short-cuts they take to make it fast. It’s really not complicated to understand (if you know the mathematics already, if not I guess it stays a black box).
I tried to implement that into a FreePascal program (with some tiny changes (block size smaller for example, because of the smaller screens on Amiga)). It runs rather well, I did not want to code hardware, but use OS functions which make it a bit slow of course (especially the line drawing).
For the actual 3D image s I used RectFill but of course on a non-RTG Amiga thats very slow, therefore I changed that to write chunky pixels to a temp buffer and use WriteChunkyPixels to copy that to screen, already much faster but still not max speed. I found a funny patch (Blazewcp), which patches the WriteChunkyPixels function to be much faster, and voila really nice speed of already 12.5 fps, without turning OS of or Assembler/Hardware stuff, in pure FreePascal.
You want to have it? try it? Sure why not: Download (Source and Exe for m68k Amiga OS3.x 68020+ and FPU needed, but can be compiled and run for all Amiga-likes)
You know whats most funny when browsing Wolfram Alpha or such databases, just following the links inside it, sadly the API does not give infomations for links in the text. BUT it supplies related searches, I implemented an additional page to AYA that you can find close searches, sometimes there are even some weird stuff… maybe they are searches other user used? I don’t know.
Besides that I implemented a history of your searches and also added some suggestions sorted in categories, some starting points what to search. Also if you find something funny (like the people curves e.g. “Arnold Schwarzenegger curve” and so on) why not share them with other. In the result window is now a “Share” button where you can add a short description and your name (if you like) and I will add them to the suggestion database. (which you can update via the suggestion window)
Also the software itself can be updated from the suggestion window.
Finally I found some motivation to put a release together of “Ask Your Amiga” the new tool for your beloved Amiga. It’s working nicely, now also can save the image or text, but nothing more… just very basic functionality but even so I like it working rather smooth even on my slower Amiga 68030.
As always it is available for all Amiga systems with an Internet connection and a GIF Datatype installed.
Worked a little bit more on the SSL implementation for Amiga in FPC using the AmiSSL.library. First I tried to just use the OpenSSL implementation in FPC. It was much work but sadly it just crashes on SSL connect and I have no idea why, rechecked everything. But before it was working using the BIO_* functions, so I rewrote the FreePascal implementation for AmiSSL using the BIO_* functions and finally it works. That means one could now get a webpage from a HTTPS page with a single line of code (and two uses), which is really nice.
In principle this should also work on MorphOS, for AmigaOS4 it would need to rewrite the import unit for AmiSSL. Sadly AmiSSL still does not exists for AROS only a c-link lib which does not work at the moment in FreePascal-AROS.
I updated the AROS64 source I had to the new stabilized ABIv1 AROS64 introduced by deadw00d (see source on github). At the start I had some tiny problems, e.g. collect-aros was crashing here as well. But in contrast to the main SMP AROS64/Icaros64 after my bug report, it was fixed very fast. Therefore I was able to compile at 64 bit AROS again using FreePascal, very nice. I also tried some of my old programs and all work rather nicely, some tiny problems of course but overall not bad. I will try to investigate what of these programs are from my code or fpc code and what comes from AROS64 itself. I’m not sure if more bug reports are wanted (because I guess deadw00d aims more to the AxRT) but maybe I will try it.
Because that worked so flawless, I decided to create a new version of my AROS64 distribution “The 100% useless AROS distribution” this time already much more stable and much more useful than before.
I added some more programs, (not only my own) the FP-IDE does work, but sadly the compilation still crash, so you have to use the shell to compile. I even got the network to work and MUIMapparium shows the map nicely and search also works, so maybe the name is somewhat wrong now, it’s only 99% useless, after all? Nevertheless have fun with it.
I uploaded some of my sources to my github account. With it also Leu and MUIMapparium. MUIMapparium is 100% written by me, therefore it is now under CC0 License. Leu contains fpspread and some files from LCL therefore it is modified LGPL as the original. Have fun with the code. 😉
I had some interesting and intense discussions the last days. Mainly about my programs and vampire. As you might know I did not want to have my programs on the highly illegal distribution Coffin. You cannot detect Coffin, but it’s a distribution especially made for Vampire, therefore if I block Vampire they will not include my software anymore. Besides the Vampire users could push the Vampire team to condemn this distribution and stop to promote it. All of that did not happen, they still added my stuff, even with the Vampire block and the people became mad about me, not about the Vampire team (or the coffin team). I’m not good at being the bad guy.
Basically the people tell me that I’m an idiot and an asshole because I blocked Vampire, so I give up. The people always told me that Coffin is not illegal because it contains abandon-ware only. Ok, if that’s the case I transform my programs to exactly that and put them all to github, then it is legal and everything is solved.
Don’t get me wrong, I do not have a grudge with the Vampire team. I always hear that, that I’m mad about them because of the FPU issue, which is not true, maybe disappointed, but not more, I use my Vampire mainly as RTG-GFX card for A600, the only one currently available and the FPU I can turn off and use femu (which still works and is rather good).