Jump to content

Photo

Screen Resolution of Jaguar Games


24 replies to this topic

#1 Jagosaurus OFFLINE  

Jagosaurus

    Moonsweeper

  • 435 posts
  • Location:Houston, TEXAS

Posted Thu May 21, 2015 7:12 AM

What screen horizontal screen resolution do Jag games run at? 480i in NTSC & 576i in PAL? Or is that max and some games were programmed to display different resolutions? I could see the 16 bit ports keeping their 224i resolution.

Someone recently mentioned Doom only runs at 200x160 versus 640x480 which surprised me. Is this correct?

This is listed on the specs page for the Jag on the VG Museum website:

Programmable screen resolution. Horizontal resolution is dependent on the amount of scanline buffer space given to the "Tom" graphics processor. Maximum vertical resolution varies according to the refresh rate (NTSC or PAL). Reportedly, a stock Jaguar (without additional memory) running NTSC can display up to 576 rows of pixels.

I think that last sentence is misleading considering the PAL equivalent of 480 is 576.

Where all Genesis & SNES games 224i or was that the max (and standard) & some displayed less?

If all this adds up, I'd be interested to see a list jag games showing what resolution they run at.

Edited by Jagosaurus, Thu May 21, 2015 7:14 AM.


#2 travistouchdown OFFLINE  

travistouchdown

    River Patroller

  • 3,694 posts
  • Do the math!
  • Location:Burlington, Vermont

Posted Thu May 21, 2015 7:49 AM

I was once told that Jaguar puts out RGB in 240p, which supposedly was pretty typical of the time.  Makes getting it to work properly on a modern LCD TV a bit of a complicated feat..



#3 Gunstar OFFLINE  

Gunstar

    Gunstar

  • 8,540 posts
  • Location:Kellyville, Oklahoma

Posted Thu May 21, 2015 8:43 AM

Actually the 480i/p, 576i/p, 720p, 1080i/p, etc. is the vertical resolution. It can be confusing because Horizontal resolution is how many vertical columns there are side by side across the screen. Vertical r

Edited by Gunstar, Thu May 21, 2015 9:33 AM.


#4 PlaysWithWolves OFFLINE  

PlaysWithWolves

    Dragonstomper

  • 833 posts

Posted Thu May 21, 2015 8:58 AM

Someone recently mentioned Doom only runs at 200x160 versus 640x480 which surprised me. Is this correct?
...

If all this adds up, I'd be interested to see a list jag games showing what resolution they run at.

 

 

I can't give you the official word on the technical details of the Protector series, as I simply don't know. But here's what I can deduce, for whatever that's worth:

The attached PNG is  conversion of one of the original Protector backgrounds.  It's 512 x 200, but of course is longer for the scrolling effect.  All editions of Protector use this size.

 

NTSC  4:3 is 150 x 200
PAL     5:4 is 160 x 200

 

I don't know if there's any actual programming difference, of if some games just fill in the blank space with more graphics or even just leave an empty border.

Attached Thumbnails

  • CDGALAXY.png

Edited by PlaysWithWolves, Thu May 21, 2015 9:10 AM.


#5 PlaysWithWolves OFFLINE  

PlaysWithWolves

    Dragonstomper

  • 833 posts

Posted Thu May 21, 2015 9:24 AM


240p was a standard vertical resolution of almost all 8-bit,16-bit and 32-bit consoles, and wasn't increased to 480i/p until the Dreamcast (possibly N64?). One exception was the 3DO that displayed a 320x240 resolution picture in 640x480i CRT TV/monitor. The others all skipped every other scan line of a 480i TV.

 

Doom (on the Jag) runs in 160x200, not 200x160, and it's refering to the actual game window, subtracting 40 vertically for the panel at the bottom showing health and ammo,etc. Including that area the screen resolution is 160x240p.

 

 

Gunstar replied while I was typing and clearly has a firmer grasp on the technical details than I do.  Thanks!



#6 Jagosaurus OFFLINE  

Jagosaurus

    Moonsweeper

  • Topic Starter
  • 435 posts
  • Location:Houston, TEXAS

Posted Thu May 21, 2015 12:05 PM

Interesting... didn't realize the PAL sets where 5:4 versus 4:3. I never crunched the aspect ratio numbers. 1.33 vs 1.25.

Makes sense on Doom if you're referring to game play window.

Yeah Gunstar, I always get the terminology mixed up although I understand the tech... 480 lines >>>, 640 ^^^^:P the verbiage is opposite of how it registers for me.

4/3 = 1.3333
480 x 1.3333 = 640 is how I remember it :)

Is there any way to see, perhaps in an emulator, the true aspect ratio for each game?

Edited by Jagosaurus, Thu May 21, 2015 12:05 PM.


#7 Gunstar OFFLINE  

Gunstar

    Gunstar

  • 8,540 posts
  • Location:Kellyville, Oklahoma

Posted Thu May 21, 2015 2:30 PM

 

Actually the 480i/p, 576i/p, 720p, 1080i/p, etc. is the vertical resolution. It can be confusing because Horizontal resolution is many vertical columns there are side by side across the screen. Vertical resolution is how many horizontal lines or rows there are top to bottom of the screen. These (above) are some set standards for Vertical resolution. Horizontal resolution often varies regardless of the vertical standards, with overscan and bandwidth. 
 
240p was a standard vertical resolution of almost all 8-bit,16-bit and 32-bit consoles, and wasn't increased to 480i/p until the Dreamcast (possibly N64?). One exception was the 3DO that displayed a 320x240 resolution picture in 640x480i CRT TV/monitor. The others all skipped every other scan line of a 480i TV.
 
Doom (on the Jag) runs in 160x200, not 200x160, and it's refering to the actual game window, subtracting 40 vertically for the panel at the bottom showing health and ammo,etc. Including that area the screen resolution is 160x240p.
 
I'm pretty sure other console ports also used this resolution since most were ported from the Jaguar version. 
 
There are plenty of games on plenty of 32/64-bit era consoles that display in less than 320 horizontal pixels and almost all displayed in 240p vertically.
 
No 32-bit era console version of Doom is 640x480 for sure, and I'm not sure if the original PC version was even that resolution, 640x480 was the VGA screen resolution of most PCs of the same era, but there were plenty of PC games that actually ran in 320x240 actual pixel resolution.

Some how my original post got cut off, so here is the entire original post with slight editing.



#8 Gunstar OFFLINE  

Gunstar

    Gunstar

  • 8,540 posts
  • Location:Kellyville, Oklahoma

Posted Thu May 21, 2015 2:40 PM

If we want to get really technical about resolutions, most consoles weren't even exactly 240p, for example, IIRC, the Jaguar's "standard" resolution is 320x224 for NTSC. And other consoles use a similar "letterboxing." Of course the Jaguar is actually capable, within it's hardware, for much higher than even 640x480, but 320x224 on the Jag, and similar on other consoles was used mainly due to memory constraints. A full 240p can still be achieved using over-scan in the display, and better than 320 horizontally as well with overscan.

 

Many Jaguar games actually have over-scanning. I noticed it while using a wide screen  LCD monitor with my rgb-to-vga box on the Jag. Normally the Jaguar's picture is stretched horizontally due to the 4:3 ratio displayed on 16:9 ration monitor, but using my monitor's clock adjust, I can reduce the screen back to a 4:3 image with side bars on the monitor screen. I noticed that many Jaguar games still fill up the entire screen horizontally because of the over-scanning they use!


Edited by Gunstar, Thu May 21, 2015 2:45 PM.


#9 Jagosaurus OFFLINE  

Jagosaurus

    Moonsweeper

  • Topic Starter
  • 435 posts
  • Location:Houston, TEXAS

Posted Thu May 21, 2015 4:59 PM

Awesome info Gunstar! You're right, you can really get deep into this topic technically :)

I guess my main curiosity was to know as an example only (only using these titles hypothetically):
Pitfall & Zool 2 run at 224i on NTSC
while...
Rayman & AvP run at 480i on NTSC
so on & so forth. Just thought it'd be an interesting comparison.

#10 CyranoJ OFFLINE  

CyranoJ

    River Patroller

  • 4,838 posts
  • RAPTOR in LOCAL
  • Location:Adelaide, SA

Posted Thu May 21, 2015 5:25 PM

The Jaguar doesn't have any kind of frame buffer - the display is composed of lines of objects defined in a list.  There is a maximum and minimum position for these vertically, however there is no 'set resolution'.  Also, the horizontal resolution can be selected by video clock cycles, and the display can be optionally interlaced.

 

In short, there is no answer to this question, just a maximum and minimum in both x and y.



#11 swapd0 OFFLINE  

swapd0

    Chopper Commander

  • 162 posts

Posted Fri May 22, 2015 6:35 AM

IIRC you can have near 300 lines on a PAL jaguar, using the standard video setup code. 



#12 Zerosquare OFFLINE  

Zerosquare

    River Patroller

  • 2,386 posts
  • Location:France

Posted Fri May 22, 2015 6:36 AM

Supported horizontal resolutions are:
- 1400 pixels (NTSC) /1382 pixels (PAL) [*]
- 700 pixels (NTSC) / 691 pixels (PAL)
- 466 pixels (NTSC) / 460 pixels (PAL)
- 350 pixels (NTSC) / 345 pixels (PAL)
- 280 pixels (NTSC) / 276 pixels (PAL)
- 233 pixels (NTSC) / 230 pixels (PAL)
- 200 pixels (NTSC) / 197 pixels (PAL)
- 175 pixels (NTSC) / 172 pixels (PAL)

Supported vertical resolutions are:
- 240p (NTSC) / 288p (PAL)
- 480i (NTSC) / 576i (PAL) [*]

[*] means that, AFAIK, no commercial game uses it.

This doesn't mean games have to us the full width and height of each resolution; they can have borders on each side (and most do), so they can display fewer "useful" pixels.

#13 Gunstar OFFLINE  

Gunstar

    Gunstar

  • 8,540 posts
  • Location:Kellyville, Oklahoma

Posted Fri May 22, 2015 10:05 AM

I don't think there is any game on the Jaguar that uses 480i, even if it is possible (and I believe you, in fact isn't there a demo for the Jag in 480i?).

And few or no 480i games on any 32-bit console of the era with the exception of the 3DO, which as stated before, only displays a 240p image in 480i, the pixels are still 240p res.

 

And, of course, keep in mind that the 3DO's display tech is only important on old CRT 480i screens, modern LCD, plasma, LED, DLP, etc. don't have CRT scan-lines that can be interlaced or skipped so any console with 240p vertical resolution looks identical, including the 3DO.

 

If 480i resolution is used in a Jag game, on modern screens it would display as 480p. All 480i sources are displayed at 480p.


Edited by Gunstar, Fri May 22, 2015 10:13 AM.


#14 Zerosquare OFFLINE  

Zerosquare

    River Patroller

  • 2,386 posts
  • Location:France

Posted Fri May 22, 2015 2:31 PM

Very few games/programs use 480i/576i. The only ones I know of are:
- the QuAkE slideshow tool from Reboot
- U235's unfinished Tetris game
- my own old static graphic demos

#15 ZylonBane OFFLINE  

ZylonBane

    River Patroller

  • 3,912 posts
  • Location:KC, KS, USA

Posted Fri May 22, 2015 4:20 PM

In short, there is no answer to this question, just a maximum and minimum in both x and y.

 

The question was what resolution do Jag games run at, and for 99% of them, the answer "320x240" is close enough. There's no need to derp on about overscan and frequencies and resolutions the Jag could use but didn't outside of third-party demos.



#16 SCPCD OFFLINE  

SCPCD

    Star Raider

  • 64 posts
  • Location:France

Posted Sat May 23, 2015 3:02 AM

most game use the 350 pixels (NTSC) / 345 pixels (PAL) mode.

 

Doom use the 175 pixels (NTSC) / 172 pixels (PAL) mode for the first 200 line then switch to 350 pixels (NTSC) / 345 pixels (PAL) mode for the last 40 lines.

This give a free 2x horizontal zoom for the first 200 lines.



#17 swapd0 OFFLINE  

swapd0

    Chopper Commander

  • 162 posts

Posted Sat May 23, 2015 4:54 AM

I bet that doom uses 320x2?? but the gameplay zone it's a 160x175 scaled bitmap.

 

Maybe I'll have a look at the sources and confirm this.



#18 SCPCD OFFLINE  

SCPCD

    Star Raider

  • 64 posts
  • Location:France

Posted Sat May 23, 2015 6:05 AM

the Object list is defined as this (dumped in runtime so some parametres are not the initial one like Y, H and D )

L00021DC0:    00000043F4008FDB                                   ; branch   507  < VC, $00021FA0                                                                                                                                                                                                                                   
L00021DC8:    00000043F40040CB                                   ; branch   25  > VC, $00021FA0                                                                                                                                                                                                                                    
L00021DD0:    00000043BE384CD3                                   ; branch   410  > VC, $00021DF0                                                                                                                                                                                                                                   
L00021DD8:    00000043BE388CD3                                   ; branch   410  < VC, $00021DF0                                                                                                                                                                                                                                   
L00021DE0:    0000000000000CD2                                   ; gpuobj   410, #0000000000000000                                                                                                                                                                                                                                 
L00021DE8:    00000043F4008FDB                                   ; branch   507  < VC, $00021FA0                                                                                                                                                                                                                                   
L00021DF0:    1EA28043C20C8180 0000000280A0C007                  ; bitmap   X:7, Y:48, H:50, IW:160pix, D:$001EA280, L:$00021E10, BPP:16, DW:160pix, IDX:0, FP:0, PITCH1                                                                                                                                                           
L00021E10:    1C801043C40A0CD0 0000000280A0B00E                  ; bitmap   X:14, Y:410, H:40, IW:320pix, D:$001C8010, L:$00021E20, BPP:8, DW:320pix, IDX:0, FP:0, PITCH1                                                                                                                                                          
L00021E20:    1CB21043F40A0CD0 0000800280A0B00E                  ; bitmap   X:14, Y:410, H:40, IW:320pix, D:$001CB210, L:$00021FA0, BPP:8, DW:320pix, IDX:0, FP:0, PITCH1 | TRANS                                                                                                                                                  
L00021FA0:    0000000000000004                                   ; stop     #$0000000000000000                                                         

The GPU object interrupt the GPU and it do this :

L00F03030:    load    (r1), r29                       ; A43D                     r1 = $F02100
L00F03032:    move    r0, r30                         ; 881E                     r0 = $F00028
L00F03034:    storew  r3, (r30)                       ; BBC3                     r3 = $0006C1
L00F03036:    subq    #2, r30                         ; 185E                     
L00F03038:    storew  r28, (r30)                      ; BBDC                     
L00F0303A:    bclr    #3, r29                         ; 3C7D                     
L00F0303C:    bset    #12, r29                        ; 399D                     
L00F0303E:    load    (r31), r28                      ; A7FC                     
L00F03040:    move    r2, r31                         ; 885F                     
L00F03042:    addq    #2, r28                         ; 085C                     
L00F03044:    jump    T, (r28)                        ; D380                     
L00F03046:    store   r29, (r1)                       ; BC3D                     

on GPU object interrupts, the GPU write the $6C1 value in the vmode register wich is : VIDEN | MODE_16CRY | CSYNC | BGEN | PWIDTH_332

 

on VBL interrupts, the 68k do  :

L000041A6:    link      a6, #$0000                    ; 4E56 0000                NV..
L000041AA:    movem.l   d0-d5/a0-a5, -(a7)            ; 48E7 FCFC                H...
L000041AE:    jsr       L000040F0.l                   ; 4EB9 000040F0            N...@.        ; write OP list
L000041B4:    move.l    L00021FC4.l, d0               ; 2039 00021FC4             9....        ; $000EC1
L000041BA:    move.w    d0, L00F00028.l               ; 33C0 00F00028            3....(

and $00EC1 is : VIDEN | MODE_16CRY | CSYNC | BGEN | PWIDTH_166

 

That's why the first part of the screen seems low res when the bottom is sharpen. :)


Edited by SCPCD, Sat May 23, 2015 6:10 AM.


#19 swapd0 OFFLINE  

swapd0

    Chopper Commander

  • 162 posts

Posted Sat May 23, 2015 12:21 PM

Interesting... I thought that my solution was simpler and better but they must have a reason to do it in this way.



#20 Lost Dragon OFFLINE  

Lost Dragon

    River Patroller

  • 2,505 posts

Posted Sat May 23, 2015 12:52 PM

Off at a tangent perhaps but...

 
Jeff Minter told Edge that the version of Tempest 3000 they were seeing running on the NUON hardware was running at 360X240...
 
So just curious as to what res the Jaguar version ran at.
 
Anyone know?.


#21 SCPCD OFFLINE  

SCPCD

    Star Raider

  • 64 posts
  • Location:France

Posted Sat May 23, 2015 12:56 PM

in fact it's a very good idea since OP scaled bitmap is slower than standard bitmap object :

- scaled object write 1 pixel by cycle to the line buffer

- unscaled object write 2 pixels by cycles.

 

A 2x scaled imply 4x more time than an unscaled object to write the object to the line buffer and during all this time the main ram is locked by the OP.

 

Using the technic above, makes a 2x scaled without extra time and give many more times to the system.

:)



#22 swapd0 OFFLINE  

swapd0

    Chopper Commander

  • 162 posts

Posted Sat May 23, 2015 1:27 PM

in fact it's a very good idea since OP scaled bitmap is slower than standard bitmap object :

- scaled object write 1 pixel by cycle to the line buffer

- unscaled object write 2 pixels by cycles.

 

A 2x scaled imply 4x more time than an unscaled object to write the object to the line buffer and during all this time the main ram is locked by the OP.

 

Using the technic above, makes a 2x scaled without extra time and give many more times to the system.

:)

 

I know that but I thought that since the write is into the line buffer and you are reading the same number of pixels you don't have a penalty in main bus usage.



#23 ZylonBane OFFLINE  

ZylonBane

    River Patroller

  • 3,912 posts
  • Location:KC, KS, USA

Posted Mon May 25, 2015 10:47 AM

Interesting... I thought that my solution was simpler and better but they must have a reason to do it in this way.

 

How is it better to waste bandwidth and processing resources stretching an image when you can have the video chip "stretch" it directly by generating wider pixels?



#24 swapd0 OFFLINE  

swapd0

    Chopper Commander

  • 162 posts

Posted Mon May 25, 2015 11:47 AM

1 The bandwidth with main memory it's the same (in theory), it takes more time to render into the line buffer but you don't have a big OP list. Maybe the main memory read cycles are closer and it's better.

 

2 With GPU interrupts you can have some problems with MMULT operations, but maybe they don't need it.

 

3 I thought that the code to change the screen resolution was more complex, but as SCPCD showed it's very simple.


Edited by swapd0, Mon May 25, 2015 11:48 AM.


#25 Jagosaurus OFFLINE  

Jagosaurus

    Moonsweeper

  • Topic Starter
  • 435 posts
  • Location:Houston, TEXAS

Posted Sat May 30, 2015 10:10 AM

 
The question was what resolution do Jag games run at, and for 99% of them, the answer "320x240" is close enough. There's no need to derp on about overscan and frequencies and resolutions the Jag could use but didn't outside of third-party demos.


Thanks :) exactly what I was hunting although the technical discussion has been interesting.

Looks like we had to wait a few more years before retail console software was 480i.




0 user(s) are browsing this forum

0 members, 0 guests, 0 anonymous users