Log inRegister an accountBrowse CSDbHelp & documentationFacts & StatisticsThe forumsAvailable RSS-feeds on CSDbSupport CSDb Commodore 64 Scene Database
You are not logged in - nap
CSDb User Forums


Forums > C64 Coding > FPP - flexible pixel position
2003-02-04 15:39
Dr. Jay
Account closed

Registered: Jan 2003
Posts: 32
FPP - flexible pixel position

Anyone have a commented source example?
 
... 27 posts hidden. Click here to view all posts....
 
2017-10-09 22:11
chatGPZ

Registered: Dec 2001
Posts: 11386
you're welcome =D
2017-10-10 07:01
ChristopherJam

Registered: Aug 2004
Posts: 1409
"Helping"
2017-10-10 07:19
Oswald

Registered: Apr 2002
Posts: 5094
my bad so its reading and all that :)

"Also only use every 2nd screen. This way you'll avoid also having to skip 5 chars in the middle of a charset. And you only need 6 screens if you don't use charpacked gfx."

I dont get this, why halve the nr of possible rows when it fits into the charset anyway? why only 6 screen ? thats 6 rows max ?
2017-10-10 07:29
Krill

Registered: Apr 2002
Posts: 2980
6 * 40 = 240, you cannot put more than 6 full char rows with unique characters into a charset.
2017-10-10 08:34
Oswald

Registered: Apr 2002
Posts: 5094
that clears it up, now I remember why my chessboard fpp shit in Soiled was 32 wide =)
2017-10-10 09:26
xIII

Registered: Nov 2008
Posts: 210
Thanks all for the replies!
2017-10-10 09:48
Cruzer

Registered: Dec 2001
Posts: 1048
Sorry, I should have said "You only need 6 screens if your gfx is 40 chars wide and isn't charpacked." Of course you can use all 16 screens in other cases, but I was just trying to make it as simple as possible.
2017-10-12 20:59
xIII

Registered: Nov 2008
Posts: 210
After all the replies I managed to code the FPP routine but I came across a new problem. I hope to get some more support in here :)

I copied the bytes of the original charset in the correct positions with this routine:
Setup_Charset:	.for (var x=0;x<251;x++){
			lda charset+0+x*8
			sta screen0+0+x*8 // screen0 = $4028
			lda charset+1+x*8
			sta screen1+0+x*8 // screen1 = $4828
			lda charset+2+x*8
			sta screen2+0+x*8 // ...
			lda charset+3+x*8
			sta screen3+0+x*8
			lda charset+4+x*8
			sta screen4+0+x*8
			lda charset+5+x*8
			sta screen5+0+x*8
			lda charset+6+x*8
			sta screen6+0+x*8
			lda charset+7+x*8
			sta screen7+0+x*8
			}
	rts


The calculated charsets were saved and imported in the actual code (I'm sure there's a better way). The first 5 chars of every charset were used for screendata.

When I start the fpp routine it shows the first 34 chars correct but the final 6 chars are scrambled.
I have tried some things but cannot figure out what is going wrong. If you want to see the actual code, pm me.
2017-10-12 23:50
Cruzer

Registered: Dec 2001
Posts: 1048
Looks like it would work, even though it's some of the most bloated code I've ever seen. :)

Your problem might be with the char setup or the FPP routine itself. Maybe the first badline is triggered at an odd position, causing the screen to be VSP'ed some chars. The possibilities are plenty. Trial'n'error your way forward. Look at the generated data in an MC-monitor. Try adding/removing nops. This is how we all spend most of our coding time. Things almost never work the first time.
2017-10-13 06:13
hollowman

Registered: Dec 2001
Posts: 474
To verify your fpp data you can try using fpp-converter and compare it to your data, and you can test your data with its routine (it is using 16 screens so you cant use chars $00-$04 or $80-$84)

And for the charset and screen you can try convert studio where you can convert bitmap to charset+screen and select the characters that may not be used in the charset.
Previous - 1 | 2 | 3 | 4 - Next
RefreshSubscribe to this thread:

You need to be logged in to post in the forum.

Search the forum:
Search   for   in  
All times are CET.
Search CSDb
Advanced
Users Online
Andy/AEG
Unlock/Padua/Albion
TheRyk/MYD!
Chesser/Blazon
B.A./QUANTUM
Visage/Lethargy
Alakran_64
LordCrass
E$G/HF ⭐ 7
algorithm
Abynx/Wavefx
Guests online: 105
Top Demos
1 Next Level  (9.7)
2 13:37  (9.7)
3 Mojo  (9.7)
4 Coma Light 13  (9.6)
5 Edge of Disgrace  (9.6)
6 What Is The Matrix 2  (9.6)
7 The Demo Coder  (9.6)
8 Uncensored  (9.6)
9 Comaland 100%  (9.6)
10 Wonderland XIV  (9.6)
Top onefile Demos
1 Layers  (9.6)
2 No Listen  (9.6)
3 Cubic Dream  (9.6)
4 Party Elk 2  (9.6)
5 Copper Booze  (9.6)
6 Dawnfall V1.1  (9.5)
7 Rainbow Connection  (9.5)
8 Onscreen 5k  (9.5)
9 Morph  (9.5)
10 Libertongo  (9.5)
Top Groups
1 Performers  (9.3)
2 Booze Design  (9.3)
3 Oxyron  (9.3)
4 Triad  (9.3)
5 Censor Design  (9.3)
Top Swappers
1 Derbyshire Ram  (10)
2 Jerry  (9.8)
3 Violator  (9.7)
4 Acidchild  (9.7)
5 Cash  (9.6)

Home - Disclaimer
Copyright © No Name 2001-2024
Page generated in: 0.049 sec.