| |
ws
Registered: Apr 2012 Posts: 251 |
Simple bilinear interpolation in assembler
Hello,
for some reason, with increasing age, i am no longer interested in spending much time on re-inventing the wheel.
Therefore, i'd like to ask if any of you wizards perhaps know of a close solution to this problem:
Lets say you have a "heatmap" in a matrix of 20x10 cells.
Does anyone perhaps already have a fast and simple routine for interpolating all the values within these cells, so that when you have some cells with very high values and some cells with very low values, that more or less smooth transitions (image blur) can be achieved in very few rasterlines?
Google just spat out hardcore math for me, which i feel unable to wrap my head around, when attempted to translate to a c64 assembler solution. (I code in assembly, directly, no c++ or the like, pretty please).
best regards
WS |
|
... 30 posts hidden. Click here to view all posts.... |
| |
ws
Registered: Apr 2012 Posts: 251 |
Ah! I had a double buffering version before but for some reason fell back to single frame! Thanks alot for the hint! That should do the trick! |
| |
Sparta
Registered: Feb 2017 Posts: 49 |
lda buffer1-1
adc buffer1+1
ror
adc buffer1
ror
sta buffer2
lda buffer1
adc buffer1+2
ror
adc buffer1+1
ror
sta buffer2+1
Put it in a loop if you want. Good luck! |
| |
Sparta
Registered: Feb 2017 Posts: 49 |
If speed is not an issue, you may also want to try something like this to get an even better average of 4 neighboring values:
lda buffer1-1
adc buffer1+1
ror
sta ZP
lda buffer-$28
adc buffer+$28
ror
adc ZP
ror
sta buffer2
|
| |
ws
Registered: Apr 2012 Posts: 251 |
Oh man! This is so beautiful! Thank you!!!
http://dl.dataelephant.net/spartablur.prg
(press space to move)
http://dl.dataelephant.net/spartablur.rar
(requires cbmprgstudio to compile:
http:http://www.ajordison.co.uk/download.html ) |
Previous - 1 | 2 | 3 | 4 - Next |