Search found 60 matches

by M-374 LX
Sun Mar 30, 2014 2:48 pm
Forum: Demos
Topic: Pseudo-3D road demo
Replies: 20
Views: 6086

I was wondering why the road effect was not displayed on real hardware and Genesis Plus GX. It turns out you accidentally set bit 2 in VDP register #0 which results in freezing the HV counter. This feature is not supported by most emulators but you might want to fix it since your code relies on HV ...
by M-374 LX
Sun Mar 30, 2014 1:43 am
Forum: Demos
Topic: Pseudo-3D road demo
Replies: 20
Views: 6086

I have finally found that the problem stops if I do not call the vdp_hscroll function, which copies scroll values for each line from a buffer via DMA. Perhaps it is a better idea to set the horizontal scrolling mode to full screen and change the scroll value also during the HBlank.
by M-374 LX
Sat Mar 29, 2014 2:06 am
Forum: Demos
Topic: Pseudo-3D road demo
Replies: 20
Views: 6086

I have actually cleared D0 and D1 immediately before:

Code: Select all

	clr.l	%d0
	clr.l	%d1

   move.b   (0xC00008), %d0
   lsl.w   #2, %d0

   lea      scanline_buffer, %a0
   move.w   0(%a0,%d0.w),%d1
   move.w   2(%a0,%d0.w),%d0
by M-374 LX
Sat Mar 29, 2014 12:31 am
Forum: Demos
Topic: Pseudo-3D road demo
Replies: 20
Views: 6086

I am currently trying to add hills, but something seems to be wrong. This is the C structure I am trying to use to store vertical scrolling and palette information for each scanline: struct { ushort vscroll; ushort color; } scanline_buffer[224]; And here, how I try to read it during the HBlank: move...
by M-374 LX
Fri Mar 28, 2014 7:13 pm
Forum: Demos
Topic: ROM release for Fix-It Felix Jr.
Replies: 4
Views: 2861

Nice.

It would be interesting to use priorities so that the characters do not simply disappear when they enter the building.

Is the number of stages infinite?

What is the name of the font?
by M-374 LX
Thu Mar 27, 2014 1:00 pm
Forum: Demos
Topic: Pseudo-3D road demo
Replies: 20
Views: 6086

djcouchycouch wrote:look up tables!
The variety of values to be multiplied is large. Lookup tables do not seem to be a viable idea.
by M-374 LX
Thu Mar 27, 2014 12:21 am
Forum: Demos
Topic: Pseudo-3D road demo
Replies: 20
Views: 6086

Thanks, guys. Maybe hills can be created by changing the vertical scroll value during the horizontal interrupt, as done with the palette at present. According to the page, this effect can be done by multiplying a value during drawing to a value in the Z map, but this causes a significant performance...
by M-374 LX
Wed Mar 26, 2014 10:15 pm
Forum: Demos
Topic: Pseudo-3D road demo
Replies: 20
Views: 6086

Pseudo-3D road demo

http://imageshack.com/a/img824/1927/zjqa.png This is a tech demo for Sega Genesis that shows a pseudo-3D road featuring curves. This effect has been seen in games like OutRun, Super Hang-On, and Super Monaco GP. Most of the information required to create this demo was obtained from Lou's Pseudo-3D ...
by M-374 LX
Mon Mar 24, 2014 4:19 pm
Forum: Video Display Processor
Topic: Every 8 lines scrolled horizontally
Replies: 3
Views: 2746

I have found the problem: register 0x0B was set to 1. Changing it to 3 solves the problem.

Nevertheless, according to Charles MacDonald's VDP document, it should work if the register is set to 1. So, this seems to be a mistake in that document.
by M-374 LX
Mon Mar 24, 2014 1:50 pm
Forum: Video Display Processor
Topic: Every 8 lines scrolled horizontally
Replies: 3
Views: 2746

Every 8 lines scrolled horizontally

Why does the VDP scroll every 8 lines horizontally when I try to scroll only one?
by M-374 LX
Sun Mar 23, 2014 5:17 pm
Forum: Video Display Processor
Topic: Palette changing only every two lines
Replies: 3
Views: 2715

I have just found the cause of the problem: the VDP register #10 was set to 1 instead of 0.

One more question: is it faster to store the current scanline in the RAM or to read it from VDP port 0xC00008?
by M-374 LX
Sun Mar 23, 2014 2:12 am
Forum: Video Display Processor
Topic: Palette changing only every two lines
Replies: 3
Views: 2715

Palette changing only every two lines

While trying to use the horizontal interrupts to change a palette every line, the palette actually changes every two lines. The same happens with different codes I have tried. What may be wrong? Here is one of those codes: HBL: add.w #1,cur_scanline tst.b color_change_enabled jeq endHBL moveq #0, %d...
by M-374 LX
Sat Mar 22, 2014 5:14 pm
Forum: Megadrive/Genesis
Topic: Reading a C array from Assembly
Replies: 5
Views: 1833

Reading a C array from Assembly

Is this the right way to read the value at a position of a C array from Assembly?

In this case, d1 determines the position to be read and the value is stored in d0:

Code: Select all

lea array, %a0
adda %d1, %a0
move.l (%a0), %d0
A possible declaration in C is:

Code: Select all

const u32 array[] = {1, 2, 3, 4, 5};
by M-374 LX
Wed Sep 18, 2013 11:07 pm
Forum: Demos
Topic: Crazy Driver (simple but complete game)
Replies: 15
Views: 12342

Chilly Willy wrote:No problem, but the facebook link requires you to be logged into facebook... and I'm not a fb member.
Wrong link. :oops:
It is now fixed.
by M-374 LX
Wed Sep 18, 2013 6:10 pm
Forum: Demos
Topic: Crazy Driver (simple but complete game)
Replies: 15
Views: 12342

A new version is now available. It features new music, now using DAC samples. Also, the audio issues on the real hardware and the bug that caused the game to run faster have been fixed.

I would like to thank Chilly Willy, who is now in the "Thanks to" section of the credits.