A little sprite-demo (textmode)

The Oric video chip is not an easy beast to master, so any trick or method that allows to achieve nice visual results is welcome. Don't hesitate to comment (nicely) other people tricks and pictures :)
User avatar
Algarbi
Pilot Officer
Posts: 114
Joined: Thu Mar 19, 2009 10:47 pm

Post by Algarbi » Fri Feb 26, 2010 10:02 am

Great start on the Oric Nox.

I come from the C64 too. I have started to code a simple game on the oric, no sprites though :)

User avatar
Nox
Officer Cadet
Posts: 36
Joined: Wed Feb 24, 2010 2:49 pm
Location: Berlin
Contact:

Post by Nox » Sat Feb 27, 2010 3:59 pm

Well, good luck!
Would be nice to have some games to play around with
(I know there are some bigger ones in development...)

User avatar
Twilighte
Game master
Posts: 819
Joined: Sat Jan 07, 2006 12:07 am
Location: Luton, UK
Contact:

Post by Twilighte » Sat Feb 27, 2010 5:32 pm

Wow, that demo is so cool. I'm not sure if the question was asked before but how many characters are used?

User avatar
Nox
Officer Cadet
Posts: 36
Joined: Wed Feb 24, 2010 2:49 pm
Location: Berlin
Contact:

Post by Nox » Sun Feb 28, 2010 12:21 am

Since I use both charsets, I have to work with 80 chars
(using the top 16 chars from StdCharSet for the "status panel").

4 Sprites need 48 chars, so I can use 32 for background-gfx (here A-Z and some punctuation).
Sprites have a size eqal to 3x2 chars, so for drawing I need 4x3 chars for each one.

User avatar
Twilighte
Game master
Posts: 819
Joined: Sat Jan 07, 2006 12:07 am
Location: Luton, UK
Contact:

Post by Twilighte » Wed Mar 03, 2010 2:42 pm

As u have probably discovered normally the last 16 alt characters are not available since their definition would reside at the beginning of the Text screen memory.

However sometimes a neat trick to get all 96 available characters in both std and alt character sets is to create a HIRES Inlay then let the alt character definition overrun into the text screen (hidden by the HIRES Inlay).

User avatar
Nox
Officer Cadet
Posts: 36
Joined: Wed Feb 24, 2010 2:49 pm
Location: Berlin
Contact:

Post by Nox » Wed Mar 03, 2010 6:40 pm

Ok, I try to calculate...
AltChrTable and textscreen are overlapping by 128 bytes.
160 bytes would be 4 lines of text.
So I need a minimum of 32 lines of hires at the top of the screen
(and the maximum is 128 lines before the hiresscreen reaches the StdChrTable).
I will play a bit with that...

And another question: in hires there are 3 lines of text at the bottom.
And there it's possible to print characters, even though the hiresscreen
is using all the the memory for character-definitions.
So the ULA must read the definitions from the ROM I guess.
(and the hires-character-print-function also).
Is it possible for us to do that too?
Or is it possible at least to restore the whole characterset?

User avatar
Dbug
Site Admin
Posts: 2303
Joined: Fri Jan 06, 2006 10:00 pm
Location: Oslo, Norway
Contact:

Post by Dbug » Wed Mar 03, 2010 8:22 pm

The TEXT character sets are from $B400 and $B800 respectively, but the 3 lines of text at the end of the HIRES section uses the adresses $9800 and $9C00.

So technically, if you start in TEXT mode, then at the end of line 25 you insert a SWITCH TO HIRES attribute, you effectively forced the 3 last lines of TEXT to use the other set of adresses.

Post Reply

Who is online

Users browsing this forum: No registered users and 2 guests