Jump to content
IGNORED

Quantizator


ilmenit

Recommended Posts

You know, I'm not using RMT anymore, but I have a list of available experiments ;)

 

I guess this fits somehow...

Emkay, sometimes I think you really make great pokey test-tunes, with interesting instruments. Sometimes, such as this time, you make horrible tunes.

  • Like 1
Link to comment
Share on other sites

You know, I'm not using RMT anymore, but I have a list of available experiments ;)

 

I guess this fits somehow...

Emkay, sometimes I think you really make great pokey test-tunes, with interesting instruments. Sometimes, such as this time, you make horrible tunes.

 

That's why I name them "Experiments" :)

Link to comment
Share on other sites

Would it be possible that some compiled executables can be added to GitHub? We've not all got the setup on our computers to be able to compile this code correctly and it'd be nice if there was one place (other than here spread over several pages) where we can find the different versions. It'd be nice if the different OS versions were in there too.

 

I wouldn't mind testing it out on my Linux BeagleBone with maxevals enabled. Then I'd set up a batch run and see what comes out!

Link to comment
Share on other sites

wow.. thats doom :)

emkay - can you make music for that picture? pleease :)

 

You know, I'm not using RMT anymore, but I have a list of available experiments ;)

 

I guess this fits somehow...

 

http://www.youtube.com/watch?v=tQf_0bW2dBk

 

 

This way .... ;)

 

 

http://www.atariage.com/forums/topic/188679-real-atari-8-bit-impressions/page__st__100#entry2525347

Link to comment
Share on other sites

Would it be possible that some compiled executables can be added to GitHub? We've not all got the setup on our computers to be able to compile this code correctly and it'd be nice if there was one place (other than here spread over several pages) where we can find the different versions. It'd be nice if the different OS versions were in there too.

 

I wouldn't mind testing it out on my Linux BeagleBone with maxevals enabled. Then I'd set up a batch run and see what comes out!

 

I added my latest Windows and Linux x64 builds to the downloads area. Can you provide a Beaglebone ARM build?

  • Like 1
Link to comment
Share on other sites

I added my latest Windows and Linux x64 builds to the downloads area. Can you provide a Beaglebone ARM build?

 

I'd love to! But I have a couple of problems.

 

1) I don't have X11 installed and don't intend to due to lack of speed, though that should hopefully not stop me from compiling.

2) I just completed a 'make clean all' and it's complaining about a lack of a freeimage.h file. Googling around, it *appears* that FreeImage hasn't been ported to the BeagleBone. I don't really want to go having to port FreeImage to the BeagleBone, unless it is simple.

 

Any ideas?

Link to comment
Share on other sites

I'm just doing a build of FreeImage right now... *fingers crossed* that it'll work, I'm no C++ programmer.

 

UPDATE: I now have FreeImage built. Now I need to sort out Allegro as I have the same issue with that.

Edited by snicklin
Link to comment
Share on other sites

I'm just doing a build of FreeImage right now... *fingers crossed* that it'll work, I'm no C++ programmer.

 

UPDATE: I now have FreeImage built. Now I need to sort out Allegro as I have the same issue with that.

 

Perhaps it'd be nice to have a non-gui version, too, in the future, which then can easily be run on headless machines. One might even strip out all FreeImage code and only support PPM files (portable pixmaps) and BMPs, which are trivial to read without an image library. Having Allegro and FreeImage is nice, but not strictly necessary to do the conversion of images.

Edited by ivop
Link to comment
Share on other sites

 

(...)

 

There are two bugs in current versions of Altirra. One is that it doesn't properly handle a sprite that starts in horizontal blank and is retriggered again in the visible region on top of that image. That's not too bad to fix.

 

The other problem is nastier and has to do with what is actually displayed when a sprite is retriggered, particularly in quad width as RastaConverter uses. This is the bug that nobody appears to get right. It's best shown with a test program, which tests timed changes to the sprite registers (the sections are HPOSP0, GRAFP0, and SIZEP0):

 

(...)

 

 

...Just F-IMPRESSED with the ganularity and attention to detail loaded on your work.

 

I've always said "There's programming of anything... and then there is Emulation programming...". I just wonder how much time (hours) it took you to discover and decode the above problem.

 

I guess these problems are precisely the fuel that make Emulation-coding not just challenging but fascinating, too (in the longer term). I also wonder how many of these snafus are hidden in-there, awaiting to be discovered, somehow, someday...

 

Thanks!

Link to comment
Share on other sites

I'm just doing a build of FreeImage right now... *fingers crossed* that it'll work, I'm no C++ programmer.

 

UPDATE: I now have FreeImage built. Now I need to sort out Allegro as I have the same issue with that.

 

Perhaps it'd be nice to have a non-gui version, too, in the future, which then can easily be run on headless machines. One might even strip out all FreeImage code and only support PPM files (portable pixmaps) and BMPs, which are trivial to read without an image library. Having Allegro and FreeImage is nice, but not strictly necessary to do the conversion of images.

 

I was thinking the same thing! I created a fork that makes Allegro optional. Executables here. I made the default /max_evals=5000 when Allegro is disabled.

 

ilmenit, I hesitate to merge this into the mainline since it mucks up the code quite a bit. Ideas?

Link to comment
Share on other sites

I was thinking the same thing! I created a fork that makes Allegro optional. Executables here. I made the default /max_evals=5000 when Allegro is disabled.

ilmenit, I hesitate to merge this into the mainline since it mucks up the code quite a bit. Ideas?

 

There a 4 parts of RastaConverter:

1. GUI (allegro library) which for now is only displaying and could be replaced by sth better (f.e. similar to http://noname.c64.or...lease/?id=93314 ) or by a pure command line.

2. Loader (freeimage library) responsible for loading the input from a different gfx formats.

3. Preprocessing - converting to the Atari palette with a selected color distance function, changing the saturation and the contrasts, applying a dithering. This part can be interactive in the GUI or parametrized in the command line.

4. Converter - command line executable to be called or external module (DLL) to be loaded by other frontends (Graph2Font?) on demand.

 

Recently I'm too busy to work on the converter so feel free to do your changes. This is an open source project and anyone can contribute :-)

Good work with recreation of the history in the GitHub!

Edited by ilmenit
Link to comment
Share on other sites

OK then, I've tried doing a build with Allegro but I've had way too many problems and now officially give up porting it to the BeagleBone.

 

Xuel, your idea of creating an optional Allegro port is genius. Unless I've got it wrong, I'll need to wait till you merge your code into the master before I can use that code though.

 

I've tried using the Linux executable port but it's not Angstrom Linux friendly as far as I can see. As Ilmenit is allowing you to merge, could you merge those in? (or is there a way to download the files separately??).

 

By the way, I've accidentally created a fork in there which I didn't want to do, how do I clear it up, or can someone else clean it up? Sorry!!!

Link to comment
Share on other sites

Xuel, your idea of creating an optional Allegro port is genius. Unless I've got it wrong, I'll need to wait till you merge your code into the master before I can use that code though.

 

I've tried using the Linux executable port but it's not Angstrom Linux friendly as far as I can see. As Ilmenit is allowing you to merge, could you merge those in? (or is there a way to download the files separately??).

 

The beauty of github is that forks have all the features as the mainline. So, you have several options to get my optional-allegro fork:

  • Click on the "ZIP" button here
  • Click on "Download as .zip" here.
  • get clone git@github.com:lybrown/RastaConverter.git

I'm thinking of refactoring the code a little before merging back into the mainline so that the pieces that ilmenit mentioned are more modularized.

 

By the way, I've accidentally created a fork in there which I didn't want to do, how do I clear it up, or can someone else clean it up? Sorry!!!

 

No worries. Your fork is private to you. You can keep it or delete it by going to it's page, clicking on "Admin" and then "Delete this repository". You couldn't affect my repository or ilmenit's unless we were to add you as a collaborator.

Link to comment
Share on other sites

Thank you Xuel, you have been very helpful. There are so many good people on here.

 

I have managed to produce a BeagleBone (Angstrom Linux) port which doesn't rely on Allegro. I had to hack the Makefile to not use any X11 libs or Allegro.

 

However, there is a problem which I am not sure if it is due to what I am doing.

 

Please see the attached files for an output graphic. The output picture is duplicated within the picture, yet only half of the output graphic is used. I've tested this with 2 different pictures. I've also tried using bmp as an output format, this also gives me the same problem.

 

Any ideas?

 

Once I've got it working, I'll post a BeagleBone port on here.

beavis.zip

Link to comment
Share on other sites

Thank you Xuel, you have been very helpful. There are so many good people on here.

 

I have managed to produce a BeagleBone (Angstrom Linux) port which doesn't rely on Allegro. I had to hack the Makefile to not use any X11 libs or Allegro.

 

However, there is a problem which I am not sure if it is due to what I am doing.

 

Please see the attached files for an output graphic. The output picture is duplicated within the picture, yet only half of the output graphic is used. I've tested this with 2 different pictures. I've also tried using bmp as an output format, this also gives me the same problem.

 

Any ideas?

 

Once I've got it working, I'll post a BeagleBone port on here.

 

Oops! I swapped the src and dst coordinates in my simple reimplementation of allegro's stretch_blit() function. I committed a fix here. BTW, the issue only affected the output pictures. The .pmg, .mic and .rp files should have been fine.

 

That's cool that you got it working on Beagebone! What kind of evaluation rates are you seeing? I get around 3200 with allegro and 4200 without on my Phenom II X4 3.4Ghz desktop machine in windows and a little higher than that in Linux.

Link to comment
Share on other sites

 

Oops! I swapped the src and dst coordinates in my simple reimplementation of allegro's stretch_blit() function. I committed a fix here. BTW, the issue only affected the output pictures. The .pmg, .mic and .rp files should have been fine.

 

That's cool that you got it working on Beagebone! What kind of evaluation rates are you seeing? I get around 3200 with allegro and 4200 without on my Phenom II X4 3.4Ghz desktop machine in windows and a little higher than that in Linux.

 

Oh brilliant, I was concerned that my port of FreeImage had gone wrong! Excellent, I'll take a look at the fix tonight.

 

Well, considering that the BeagleBone is only 720 MHz when on a power supply, I'm getting a rate around 480 when it first starts and after 50,000 evaluations, that has dropped to 250. That's not spectacular to say the least, even on 720MHz! But it just sits there and works away on not a lot of watts. By the way, I'm using g++ which comes with the BeagleBone as my compiler.

 

I'm thinking about setting it up to process whole directories of pictures, giving it a max_evals value and seeing what comes out several days later.

Link to comment
Share on other sites

Great, now, here's a BeagleBone port. I hope that there are people out there who have BeagleBones! If you do, please reply with a 'yay' to let me know that this is worth doing! (otherwise I may go and sulk in a corner!)

 

FreeImage needs to be installed. To do this, download the source code and then copy it to your BeagleBone. Go to the source directory and do a 'make clean all'. Then do a 'make install'. This will install it to your system.

 

Then copy the attached file in, this should use FreeImage. Then use it as per the help file.

 

This version now works without the duplicate graphics and appears bug free. Please note that this is a non-Allegro build, so you will need to copy your output files to a system with graphical abilities and then you can view the output.

rastaconv.zip

Link to comment
Share on other sites

Great, now, here's a BeagleBone port. I hope that there are people out there who have BeagleBones! If you do, please reply with a 'yay' to let me know that this is worth doing! (otherwise I may go and sulk in a corner!)

 

Nice work! I've added your build to the downloads page.

 

I don't have a BeagleBone but I might be interested in getting one. I want to try hooking up a microcontroller board to the Atari's PBI connector to try my hand at making some kind of "new equipment" device, for example, as emkay alluded to, a huge bank-switching memory expansion for RastaMovie :). I've read that Beaglebone will die if you hook 5v devices to its GPIO pins without level shifters. The Fez Panda II is 5V tolerant but has a lot less ram and cpu horsepower. Full screen movies would require ~500KB/s throughput (25fps * ~20KB per frame).

Link to comment
Share on other sites

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.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...