| |
peskanov Account closed
Registered: Mar 2004 Posts: 17 |
Sprites over blanked screen
Hi there; I am working on a small effect using sprites. I don't need any kind of backdrop, just the sprites and raster interrupt in the odd lines.
To free cycles I am poking the $d011 register in each IRQ to disable bad lines.
Well, the question is that I have been looking some demos to see the ways used by others coders, and to my surprise I have disassembled a demo which displays the sprites over a blanked screen!?
It's Comajob from Crest. The sprite strech effect works with the 4th bit of $d011 cleared, along all the screen (as far as I have seen).
I am totally puzzled, is there a way to display sprites over a deactivated screen?
|
|
| |
Radiant
Registered: Sep 2004 Posts: 639 |
Check this thread:
Screen with no Badlines |
| |
peskanov Account closed
Registered: Mar 2004 Posts: 17 |
Yes, that's the trick I was looking for. I didn't have the slightest idea about this trick.
Thanks a lot for the fast reply! |
| |
Radiant
Registered: Sep 2004 Posts: 639 |
NP, I was in your situation before JackAsser pointed me to that thread. :-) As was apparently he before that thread existed... |
| |
Cybernator
Registered: Jun 2002 Posts: 154 |
<rantmode>
A while before Oswald's thread was posted, I thought of this trick (not knowing if it was used/known before as it wasn't mentioned in VIC-article or anywhere else), and said to myself: "WOW! I'm having a worldfirst. Wait till the dudez hear about it." :PPP
</rantmode>
And btw, I named it hypra-screen. (and I still have no idea why :P) So I have to ask, does this trick have a formal name? |
| |
TDJ
Registered: Dec 2001 Posts: 1879 |
Quote: <rantmode>
A while before Oswald's thread was posted, I thought of this trick (not knowing if it was used/known before as it wasn't mentioned in VIC-article or anywhere else), and said to myself: "WOW! I'm having a worldfirst. Wait till the dudez hear about it." :PPP
</rantmode>
And btw, I named it hypra-screen. (and I still have no idea why :P) So I have to ask, does this trick have a formal name?
Yes, it's called hyper-screen. |
| |
Oswald
Registered: Apr 2002 Posts: 5094 |
while we're at it... invalid modes can be made visible by turning sprites behind them, maybe one of them is easyer to adress as the normal bitmap. So set up a sprite layer behind the invalid gfx bits, and experiment, here we have something YET to explore :) |
| |
Ninja
Registered: Jan 2002 Posts: 411 |
BTW, have you read the VIC-Article yet, Oswald? ;) |
| |
Cybernator
Registered: Jun 2002 Posts: 154 |
TDJ: Isn't hyper-screen a screen with (partially) removed borders? IIRC, that's what VIC article says. |
| |
JackAsser
Registered: Jun 2002 Posts: 2014 |
(out of topic but as an answer to Oswald's post)
Actually Pinball Dreams uses the illegal Bitmap+ECM mode for the dot-matrix display for two reasons:
1) The ECM properties saves us memory due to wrapping.
2) The pixels are automatically black no matter what's in the screen which is good since that's the linecruncher area and we only want a black grid.
Any other demos/games that makes use of these modes? |
| |
Cruzer
Registered: Dec 2001 Posts: 1048 |
invalid/illegal modes - is that the $3fff thing? |
| |
Frantic
Registered: Mar 2003 Posts: 1648 |
Quite unrelated: Illegal opcodes.. Illegal graphics modes.. What other illegal activities are there? :) I guess one could say that SounDemoN uses an "illegal" SID-trick when he locks the noise oscillator in his Pico!-tune to create new waveforms. ;) Illegal CIA-settings? No? :) |
| |
TDJ
Registered: Dec 2001 Posts: 1879 |
Quote: TDJ: Isn't hyper-screen a screen with (partially) removed borders? IIRC, that's what VIC article says.
Dude. I have no clue.
* runs away screaming * |
| |
WVL
Registered: Mar 2002 Posts: 902 |
Quote: (out of topic but as an answer to Oswald's post)
Actually Pinball Dreams uses the illegal Bitmap+ECM mode for the dot-matrix display for two reasons:
1) The ECM properties saves us memory due to wrapping.
2) The pixels are automatically black no matter what's in the screen which is good since that's the linecruncher area and we only want a black grid.
Any other demos/games that makes use of these modes?
and again offtopic ;)
but I've seen a lot of demos using the bitmap+ECM mode to 'fade-in' FLI pictures by making some lines black. (I think Byterapers use it a lot)
this is just done by writing #$5x to the lda #$xx sta $d011 code in the FLI-routine. So yes, there's demos that use it :)
|
| |
Oswald
Registered: Apr 2002 Posts: 5094 |
wvl: bahh... thats nothing, I mean to use it for something meaningfull |
| |
yago
Registered: May 2002 Posts: 333 |
@cruzer: The illegal video-mode described here does not relate to $3FFF. As said before, you can put a sprite behind the characters to view the vic-data (iirc its even different with multicolor on)
@frantic: Regarding Mrs. Rice, there are no illegal CIA-Acitivities.. The easiest illegal CIA-settings are to write illegal BCD-Bytes into the TOD. (BCD=Binary Coded Decimal, meaning $10=10, $19=19, $1A=illegal for example, TOD=Time Of Day)
|
| |
peskanov Account closed
Registered: Mar 2004 Posts: 17 |
OK, my screen is working as said, no background, just sprites.
However, when adding data to the effect the display became corrupted with a simple 8 bits pattern.
I checked the famous $3fff address you all keep talking about and the pattern is exactly the content of this address. Setting it to zero cleans the pattern.
Still, the screen changed from black to the original dark blue. Why does the original background color return? It went automatically to black when $3fff was $00...
The only change I made was filling data up to the $9000 address. |
| |
Oswald
Registered: Apr 2002 Posts: 5094 |
its extremely simple...
1 bit in $3fff will be ALWAYS a black pixel
0 bit in $3fff will be ALWAYS the color of $d021
|
| |
peskanov Account closed
Registered: Mar 2004 Posts: 17 |
That's right; I missed the fact that $3fff had a $ff value by default (I am using Power64 and VICE).
Thanks Oswald;now I think I have all the pieces to finish the effect. |
| |
Monte Carlos
Registered: Jun 2004 Posts: 359 |
I used an illegal mode some time ago in "Trip 2 Nepal"
to have black pixel behind and before Sprites on the border.
I dont remember exactly the d011 setting, but it was done in multicolor mode. The $3fff raster(@cruzer) has only black pixels in multicolor mode, but in lowres. Like on the screen with multicolor bitmaps you can place %11 pixels behind sprites. But the %10 and %01 pixels will be places in front of the sprite. Look in the part with the splitted old and young man hi-fli pic.
Monte
|
| |
Graham Account closed
Registered: Dec 2002 Posts: 990 |
@Oswald: Not quite. Multicolor mode will produce two black pixels if only 1 bit is set, and some illegal modes and hires bitmap mode will produce only black, no matter what is written to $3FFF. Also it's not always $3FFF... if you set the ECM bit in $D011, then it will be $39FF. |
| |
Monte Carlos
Registered: Jun 2004 Posts: 359 |
On the borders you'll always see only black, when in
hires bitmap mode. This doesnt depend on which other
d011 bits are set. So it doesnt depend on having an illegal
or not an illegal mode.
d021 is not read out anymore.
|