MemberAtarian Posted May 27, 2018 Share Posted May 27, 2018 (edited) Hi guys, I begann with my new game and finished the really detailed intro (it tooks up early one bank ), but I have a problem right now. I use Batari Basic and a little bit of assembly. Because I really will need space, I changed the original rutine for music, so of the volume is set to null, it won't read AUDF and AUDC, a lot of space the spare. But here is my problem: In the intro, PF0 is set to %00000000, because the sky looks that way better as the girl is falling. In the actual game I set it to %11111111 to create walls on both sides. Because I really hate color dismatch, I sacrificed p variable for background colour, before every drawscreen there is a COLUBK=p line, then I want to change the background color to black at the end of the screen, and in the vblank, I change it back to "p". So, the problem is, if I put this line: lda $00 sta WSYNC sta COLUBK Only in the playerscores.asm, there will be a huge gap between the playfield and the scoreboard, and that is really ugly. So I thought I will search for a better way, modifying the std_kernel. I found out if I put the line above in the endkernel, before stx PF1 stx PF2 stx PF0 The gap will disappear, but the last line of the playfield will be the standard mirrored playfield on the left side. Without WSYNC, the gap remains at the left edge (where the PF0 sets the wall) and there will be a little flicker of the pf color if the pf is scrolled. So basically I would like to make the 12th invisible hline of the playfield black. Any ideas? I tried to use CTRLPF, but it does nothing. I heard about something called oldscore mode that allows you to draw a nonmirrored playfield, but I did not find anything. Edited May 27, 2018 by MemberAtarian Quote Link to comment Share on other sites More sharing options...
Kiwi Posted June 1, 2018 Share Posted June 1, 2018 CTRLPF controls the ball size and set the playfield bit to enable/disable score mode, priority over sprites(it said collision), and mirrored/symmetrical. Score mode uses the player 0 for the first half of the screen and player 1 color for second half. The score on combat is in that mode when it is drawing the scores. You can see the list of vcs tia registers here: https://alienbill.com/2600/101/bin/vcs.h stx PF1 stx PF2 stx PF0 Oh, you can put a value 0 to put in PF0, PF1, PF2 to turn off the playfield bits.ldx #0 stx PF1 stx PF2 stx PF0Adding ldx #0 will add 2 or 3 cycles. Make sure it doesn't go over 76 cycles. If it after a WSYNC which will halt the CPU until the line is finish on that line likesta WSYNCldx #0stx PF0stx PF1stx PF2dey (if this is holding the value of the scanline before it hit overscan)sta WSYNCThen it won't show up in the middle of the scan line since it'll be 15 cycles. I do need to see the source of that file to be sure it won't mess up the scanline count. Supposely it draws 262 lines, 192 lines are the visible part of the screen. 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.