Jump to content

  •  

Photo

VDP Documentation Thingy


  • This topic is locked This topic is locked
10 replies to this topic

#1 tristanseifert

tristanseifert

    I make... THINGS!

  • Member
  • 370 posts
  • Gender:Male
  • Location:Austin, TX

Posted 20 August 2012 - 07:19 PM

Cross posted from Sonic Retro

Posted Image Posted Image Posted Image
(Click on a screenshot to see it from real hardware)

I've been working on looking more into the VDP and how it works it's magic for the past year or so, first writing this documentation, so I thought it might be a good idea to write some examples on how the various effects work, and thus this thing came about. It basically describes how many of the basic features of the VDP can be used to create effects, as well as some tricks used in games, followed by an example of them. I tried my best to explain it, but some explanations may be off. The ROM shows examples of patterns and palettes, nametables, sprites, vertical/horizontal scrolling, shadow and highlight, as well as pattern reloading. (If your emulator or flashcart supports SRAM, the ROM will save the last page you read, allowing you to continue from it later.)

I plan to expand this with other stuff later - so if anyone knows anything that I've missed, please tell me and I'll hope I'll be able to implement it in the next version.

That's really all I have to say - if you can't download the ROM, here's a video:


Download version 1.0:
Download

Last, but not least, I'd like to thank the following people for helping in this in some form:
* Jorge, Tiido, MarkeyJester - answering questions about the VDP and/or MegaDrive over the years
* Oerg for testing and feedback, as well as being the original person I wrote the VScroll deform effect with
* Sonic Boom for the horizontal scroll art

I look forward to hearing your lot's feedback about this.
  • 0

#2 nineko

nineko

    I am the Holy Cat

  • Staff
  • 640 posts
  • Gender:Male
  • Location:italy
  • Interests:girls

Posted 20 August 2012 - 09:47 PM

This is quite interesting, nice work :)

Also, I have to agree with what other people said elsewhere: when I saw this for the first time I thought it was a Teletext page.
  • 0

#3 Mike B Berry

Mike B Berry

    The requisite of life

  • Member
  • 318 posts
  • Gender:Male
  • Location:Stanfield Oregon
  • Interests:Studying ASM and editing Sega Genesis roms.

Posted 20 August 2012 - 09:57 PM

On page 7, the pallet rotation on the first set shows four pxels that are miscolored.
  • 0

#4 tristanseifert

tristanseifert

    I make... THINGS!

  • Member
  • 370 posts
  • Gender:Male
  • Location:Austin, TX

Posted 21 August 2012 - 12:01 AM

This is quite interesting, nice work :)

Also, I have to agree with what other people said elsewhere: when I saw this for the first time I thought it was a Teletext page.

Haha, yeah. That was sorta what I was actually designing it after, so it seems I succeeded.

On page 7, the pallet rotation on the first set shows four pxels that are miscolored.

Fixed. Download link is the same.

Edited by tristanseifert, 21 August 2012 - 12:02 AM.

  • 0

#5 Mike B Berry

Mike B Berry

    The requisite of life

  • Member
  • 318 posts
  • Gender:Male
  • Location:Stanfield Oregon
  • Interests:Studying ASM and editing Sega Genesis roms.

Posted 21 August 2012 - 12:05 AM

Alright. Now I have a question about the verticall deformation. I have no clue of what VRAM location loads that effect in Sonic 1.
  • 0

#6 tristanseifert

tristanseifert

    I make... THINGS!

  • Member
  • 370 posts
  • Gender:Male
  • Location:Austin, TX

Posted 21 August 2012 - 12:15 AM

Alright. Now I have a question about the verticall deformation. I have no clue of what VRAM location loads that effect in Sonic 1.

It's not that simple - the way this works is by altering the vertical scroll value every single scanline through the use of a horizontal interrupt - this leaves not a lot of free CPU time during active display, which means it would probably not be suitable for use in existing games.

The base scroll value is added to a specific value pre-calculated for each scanline. But like I said, it uses quite a bit of CPU time.
  • 0

#7 Mike B Berry

Mike B Berry

    The requisite of life

  • Member
  • 318 posts
  • Gender:Male
  • Location:Stanfield Oregon
  • Interests:Studying ASM and editing Sega Genesis roms.

Posted 21 August 2012 - 12:22 AM

Ahh, nevermind then. Thanks anyway. This will be very usefull in the future.
  • 0

#8 Sonic master

Sonic master

    4 Chaos Emeralds

  • Member
  • 226 posts
  • Gender:Male
  • Interests:Homebrew games for retro systems.

Posted 21 August 2012 - 06:28 PM

Silly question but how do you go to the next page? I have tried every single button.
  • 0

#9 tristanseifert

tristanseifert

    I make... THINGS!

  • Member
  • 370 posts
  • Gender:Male
  • Location:Austin, TX

Posted 21 August 2012 - 07:16 PM

Silly question but how do you go to the next page? I have tried every single button.

You've got to hold start, and then press left or right at the same time.
  • 0

#10 Mike B Berry

Mike B Berry

    The requisite of life

  • Member
  • 318 posts
  • Gender:Male
  • Location:Stanfield Oregon
  • Interests:Studying ASM and editing Sega Genesis roms.

Posted 23 August 2012 - 02:34 AM

Could there be any possibility of a normal sprite using more than one pallet line without a limitation? Preferably at least 3 out of th 4?
  • 0

#11 tristanseifert

tristanseifert

    I make... THINGS!

  • Member
  • 370 posts
  • Gender:Male
  • Location:Austin, TX

Posted 23 August 2012 - 01:08 PM

Could there be any possibility of a normal sprite using more than one pallet line without a limitation? Preferably at least 3 out of th 4?

It's not that hard... just use multiple sprites, instead of one single one. Each sprite can be assigned a different palette line and art offset, but you can't use more than one palette line in a single sprite, due to how the format of the art works, as well as that's how the VDP was designed. Also, you shouldn't need that much colours to make something look good. The original Sonic games did it with 4 or so colours.

Although the Sonic engine does support more than one palette line in a single 'sprite piece.'
  • 0




0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users