Forums

Sega Master System / Mark III / Game Gear
SG-1000 / SC-3000 / SF-7000 / OMV
Home - Forums - Games - Scans - Maps - Cheats - Credits
Music - Videos - Development - Hacks - Translations - Homebrew

View topic - Can't get anything to work on real hardware (not even Maxim's Hello, World)).

Reply to topic
Author Message
  • Joined: 07 Aug 2007
  • Posts: 220
  • Location: Yach, Germany
Reply with quote
Can't get anything to work on real hardware (not even Maxim's Hello, World)).
Post Posted: Sun Feb 26, 2017 11:40 pm
I'm writing some games for the 8-bit systems. They work in emulators (see e.g. my entries in the 2016 competition). But not on a real Mark III. And I can't seem to find out why.

I made a simple cartridge for up to 48K. I know it works: I burned Black Onyx onto a chip, put it in. It works. I burned Weka Invaders onto a chip, put it in, it works.

But my games, and even very simple demos don't. I usually get garbae on screen or no graphics at all. I tried the usual suspects, like VDP access time (maybe the VDP needs even more time than the TMS9918A).
The I thought, I should start from something working. So I downloaded Maxim's Hello, World! from http://www.smspower.org/maxim/uploads/HowToProgram/helloworld.zip
I made some changes so it assembles with sdasz80.
Assembled (sdasz80 -plosgff test.s), linked (sdcc -mz80 --no-std-crt0 --code-loc 0x0100 --data-loc 0xc000 test.rel) converted to ROM image (objcopy --input-target=ihex --output-target=binary test.ihx test.sms)

So now I got a ROM of Maxim's Hello, World! It works in MAME. It works in Meka. For both Iget a black "Hello, World!" on a green screen.
But in my Mark III, I just get a black screen.

Any ideas?

Philipp
test.txt (19.82 KB)
Hello, World! for sdasz80

  View user's profile Send private message Visit poster's website
  • Joined: 03 Jul 2005
  • Posts: 45
  • Location: Toronto, Canada
Reply with quote
Post Posted: Sun Feb 26, 2017 11:57 pm
Hi, just wanted to let you know, Maxim's hello world works fine on real sms with everdrive sms cartridge and Genesis 2 with Mega Everdrive. I got current WLA DX source off github and compiled it using vs2015.


Perhaps some timings are off with your cart? If you attach your rom, I could test for you on everdrive.
  View user's profile Send private message Visit poster's website
  • Joined: 07 Aug 2007
  • Posts: 220
  • Location: Yach, Germany
Reply with quote
Post Posted: Mon Feb 27, 2017 8:29 am
Here's the ROM file.

Philipp
test.sms.gz (714 B)

  View user's profile Send private message Visit poster's website
  • Joined: 07 Aug 2007
  • Posts: 220
  • Location: Yach, Germany
Reply with quote
Post Posted: Mon Feb 27, 2017 8:50 am
From what I see on the logic analyzer, the Hello, World! gets executed correctly at least up to the beginning of the VRAM clear loop (didn't check further yet).

Philipp
  View user's profile Send private message Visit poster's website
  • Joined: 05 Sep 2013
  • Posts: 3825
  • Location: Stockholm, Sweden
Reply with quote
Post Posted: Mon Feb 27, 2017 9:22 am
You said that Weka Invaders worked, so maybe it's that Maxim's "Hello World" doesn't reset mappers? Have you got a mapper on your cart? If so, should it reset by itself?
  View user's profile Send private message Visit poster's website
  • Joined: 07 Aug 2007
  • Posts: 220
  • Location: Yach, Germany
Reply with quote
Post Posted: Mon Feb 27, 2017 9:26 am
There is no mapper (my current cart is meant for games up to 48KB). The whole "Hello, World!"-ROM is just 3299 bytes.

Philipp

P.S.: I used Weka Invaders 0.24 from http://www.smspower.org/Homebrew/WekaInvaders-SMS
  View user's profile Send private message Visit poster's website
  • Joined: 05 Sep 2013
  • Posts: 3825
  • Location: Stockholm, Sweden
Reply with quote
Post Posted: Mon Feb 27, 2017 10:42 am
It's weird. You shouldn't have any VRAM corruption as you're turning off the VDP display before loading VRAM contents, and the last thing you do is to turn on the VDP. The only small difference I can find is the 'unused' 7th bit in VDP register #1: I'm not setting it, Maxim is & you are, but that hardly should make a difference (it's not the 2nd bit which can cause problems when running on a MD...)
  View user's profile Send private message Visit poster's website
  • Joined: 03 Jul 2005
  • Posts: 45
  • Location: Toronto, Canada
Reply with quote
Post Posted: Tue Feb 28, 2017 1:12 am
I tested your rom on Mega Everdrive and it works fine: black text on light cyan background.

WLA DX pads Maxim's example to full 32K. Your rom isn't padded.

May be try attached file on your cartridge?
ex1.sms.7z (860 B)

  View user's profile Send private message Visit poster's website
  • Joined: 07 Aug 2007
  • Posts: 220
  • Location: Yach, Germany
Reply with quote
Post Posted: Tue Feb 28, 2017 7:04 am
dhau wrote
I tested your rom on Mega Everdrive and it works fine: black text on light cyan background.

WLA DX pads Maxim's example to full 32K. Your rom isn't padded.

May be try attached file on your cartridge?


Thanks. I'll be away from my hardware for about two weeks, and will try when I'm back.

Philipp
  View user's profile Send private message Visit poster's website
  • Joined: 07 Aug 2007
  • Posts: 220
  • Location: Yach, Germany
Reply with quote
Post Posted: Thu Mar 16, 2017 11:01 am
I've created a second cart to rule out hardware glitches. Results are the same for the old and new cart. Also results are the same for the padded and non-padded Hello, Worls.

Test results:
Weka Invaders: Works on both Mark III and SMS II.
Hello, World: Black screen on Mark III, alternating vertical stripes on SMS II.

Philipp
  View user's profile Send private message Visit poster's website
  • Joined: 05 Sep 2013
  • Posts: 3825
  • Location: Stockholm, Sweden
Reply with quote
Post Posted: Thu Mar 16, 2017 3:31 pm
I really can't imagine what reason can make a cart work with a 'complex' code and not with a simpler one. There might be something we are overlooking in Maxim's "Hello World", something that won't appear if you run the ROM with a Master Everdrive.

For instance, the VDP "odd/even byte flag" is never initialized in that code. If by chance it's wrong at start-up, you will never ever program the VDP correctly.

Charles' VDP docs wrote
In order for the VDP to know if it is recieving the first or second byte of the command word, it has a flag which is set after the first one is sent, and cleared when the second byte is written. The flag is also cleared when the control port is read, and when the data port is read or written. This is primarily used to initialize the flag to zero after it has been modified unpredictably, such as after an interrupt routine has executed.
  View user's profile Send private message Visit poster's website
  • Joined: 07 Aug 2007
  • Posts: 220
  • Location: Yach, Germany
Reply with quote
Post Posted: Thu Mar 16, 2017 9:52 pm
sverx wrote
I really can't imagine what reason can make a cart work with a 'complex' code and not with a simpler one.


It seems odd. Of course a "simple" program could use one feature that the "complex" one doesn't. And that one feature might be broken with my cart somehow. But "Hello, World!" is really basic so that seems unlikely.

Philipp
  View user's profile Send private message Visit poster's website
  • Joined: 05 Sep 2013
  • Posts: 3825
  • Location: Stockholm, Sweden
Reply with quote
Post Posted: Thu Mar 16, 2017 10:13 pm
OK, then let's try something smaller. Try just setting VDP and changing the 15th sprite palette color (it's what you're choosing as border/backdrop) to, say, full red. If it doesn't work, it's probably already failing at setting VDP.

Also, Maxim's code uses OTIR instruction, while probably Weka Invaders never does. It's hardly the problem, but I thought to tell you anyway.
  View user's profile Send private message Visit poster's website
  • Joined: 07 Aug 2007
  • Posts: 220
  • Location: Yach, Germany
Reply with quote
Post Posted: Sun Mar 19, 2017 11:51 am
I've now tried this:


.area _HEADER(ABS)

.org 0x0000
;==============================================================
; Boot section
;==============================================================
    di              ; disable interrupts
    im 1            ; Interrupt mode 1
    jp main         ; jump to main program

.org 0x0066
;==============================================================
; Pause button handler
;==============================================================
    ; Do nothing
    retn

;==============================================================
; Main program
;==============================================================
main:
    ld sp, #0xdff0

ld a, #0x00
out (0xbf), a
nop
nop
nop
nop
ld a,#0x80
out (0xbf),a
nop
nop
nop
nop

ld a, #0xc0
out (0xbf), a
nop
nop
nop
nop
ld a,#0x81
out (0xbf),a
nop
nop
nop
nop

ld a, #0x09
out (0xbf), a
nop
nop
nop
nop
ld a,#0x87
out (0xbf),a
nop
nop
nop
nop

Loop:
     jp Loop


But still get a completly black screen on the Mark III. On the MAME emulator, I see a red border around a black screen. Meka gives a red screen.

Philipp
test2.sms.gz (67 B)

  View user's profile Send private message Visit poster's website
  • Joined: 05 Sep 2013
  • Posts: 3825
  • Location: Stockholm, Sweden
Reply with quote
Post Posted: Sun Mar 19, 2017 11:58 am
...it seems to me you're not even turning on Mode 4 now :|
What were you trying to get, exactly?

edit: also, the VDP doesn't need any pause between writes to address port, so the NOPs should be useless.
  View user's profile Send private message Visit poster's website
  • Joined: 07 Aug 2007
  • Posts: 220
  • Location: Yach, Germany
Reply with quote
Post Posted: Sun Mar 19, 2017 12:11 pm
I also tried the "Fullscreen Palette Test Program" (http://www.smspower.org/Homebrew/FullscreenPaletteTestProgram-SMS). It works fine. Since I noticed that the "Fullscreen Palette Test Program" does in a,(0bfh) at the start, I modifed the code from pthe previous post



main:
ld sp, #0xdff0
in a, (0xbf)
nop
nop
nop
nop
ld a, #0x00
out (0xbf), a



But it didn't help.

Philipp
  View user's profile Send private message Visit poster's website
  • Joined: 14 Apr 2013
  • Posts: 624
Reply with quote
Post Posted: Sun Mar 19, 2017 12:27 pm
Could you please try the attached rom?
Hello World.zip (1010 B)

  View user's profile Send private message Visit poster's website
  • Joined: 07 Aug 2007
  • Posts: 220
  • Location: Yach, Germany
Reply with quote
Post Posted: Sun Mar 19, 2017 12:28 pm
sverx wrote
...it seems to me you're not even turning on Mode 4 now :|
What were you trying to get, exactly?


I was trying to get a red border using a very simple program. I didn't want to bother with the relatively complicated mode 4 and the color RAM.

Philipp
  View user's profile Send private message Visit poster's website
  • Joined: 07 Aug 2007
  • Posts: 220
  • Location: Yach, Germany
Reply with quote
Post Posted: Sun Mar 19, 2017 12:34 pm
Calindro wrote
Could you please try the attached rom?


I just tried it on my cart.

It gives me a purple border around the screen area on both the SMS II and the Mark III.

On the SMS II it shows the text "Hello, World!" in the upper left corner. On the Mark III there are a few vertical color bars in the same area.

Philipp
  View user's profile Send private message Visit poster's website
  • Joined: 14 Apr 2013
  • Posts: 624
Reply with quote
Post Posted: Sun Mar 19, 2017 12:47 pm
That the SMS II shows the text already is a progress?

Is the SMS II modded in any way? What BIOS does it have?

I've attached another ROM to try.
Hello World.zip (1.06 KB)

  View user's profile Send private message Visit poster's website
  • Joined: 07 Aug 2007
  • Posts: 220
  • Location: Yach, Germany
Reply with quote
Post Posted: Sun Mar 19, 2017 12:54 pm
Calindro wrote
That the SMS II shows the text already is a progress?


Without seeing the source, I can't say. After all various ROMs I tried (Weka Invaders, Black Onyx, Fullscreen Palette Test Program) work on the cart. But so far nothing I compiled / assembled myself.

Quote

Is the SMS II modded in any way? What BIOS does it have?


I think it is just an unmodded RGB SMS II. I don't know the BIOS version.

Quote

I've attached another ROM to try.


Results for this ROM are the same as for the previous one.

Philipp
  View user's profile Send private message Visit poster's website
  • Joined: 14 Apr 2013
  • Posts: 624
Reply with quote
Post Posted: Sun Mar 19, 2017 1:16 pm
I've attached two more roms to try.

Edit: Does the Fullscreen Palette Test also show the digits or only colors controlled by button presses?

What game does your BIOS start when no cart is inserted?
Hello World.zip (2.07 KB)

  View user's profile Send private message Visit poster's website
  • Joined: 07 Aug 2007
  • Posts: 220
  • Location: Yach, Germany
Reply with quote
Post Posted: Sun Mar 19, 2017 1:46 pm
Calindro wrote
I've attached two more roms to try.

Edit: Does the Fullscreen Palette Test also show the digits or only colors controlled by button presses?

What game does your BIOS start when no cart is inserted?


The Mark III shows a black screen without a cart. The SMS II starts Alex Kidd in miracle world.

The Fullscreen Palette Test shows both colors and digits on both Mark III and SMS II.

The "Hello World.sms" shows the text on the SMS II, narrow vertical bars in the same place on the Mark III (just like your pevious "Hello, World!" ROMs). Border color varies with each start on both the SMS II and Mark III.

The "Hello World.sms_unmodded" shows a black screen on the Mark III. On the SMS II it shows a pattern of wide white vertical bars all over the black screen. This looks just like some of my attempts.

Philipp
  View user's profile Send private message Visit poster's website
  • Joined: 14 Sep 2016
  • Posts: 81
  • Location: Vienne, France
Reply with quote
Post Posted: Sun Mar 19, 2017 2:12 pm
Hello, have you tried padding the ROM files (eg. with zeros) to the size of your eprom?
I sense maybe there's a problem with the flashing that depends on ROM size, that would explain why simple examples and your test ROMS don't work (eg. they often have non power of 2 sizes).
  View user's profile Send private message
  • Joined: 05 Sep 2013
  • Posts: 3825
  • Location: Stockholm, Sweden
Reply with quote
Post Posted: Sun Mar 19, 2017 5:35 pm
Also, you might try changing VDP initialization data in Maxim's "Hello World" so that you initialize all 11 registers with the same values I'm putting in in devkitSMS VDP initialization. Let's see if that has some effect.
  View user's profile Send private message Visit poster's website
  • Joined: 07 Aug 2007
  • Posts: 220
  • Location: Yach, Germany
Reply with quote
Post Posted: Mon Mar 20, 2017 12:58 pm
gligli wrote
Hello, have you tried padding the ROM files (eg. with zeros) to the size of your eprom?
I sense maybe there's a problem with the flashing that depends on ROM size, that would explain why simple examples and your test ROMS don't work (eg. they often have non power of 2 sizes).


ROM size shouldn't matter. I'd rather suspect some VDP issue (but if it is a VDP issue, why don't others see the same problem on their systems?).

The two ROMs calindro last provided are the same size (32K), yet one works on the SMS II, not the Mark III, while the other works on neither. I'd like to see the source code for those two to compare.

Philipp
  View user's profile Send private message Visit poster's website
  • Joined: 05 Sep 2013
  • Posts: 3825
  • Location: Stockholm, Sweden
Reply with quote
Post Posted: Mon Mar 20, 2017 1:41 pm
You can see the source using Emulicious debugger.
I don't see anything special in that source. He's silencing the PSG, zeroing RAM, initializing VDP (using the same values as Maxim's source) zeroing VRAM, loading black and white colors in the palette, loading tiles into VRAM, loading tilemap (writing on screen), turning on the screen at the end.
Hello World.asm (2.69 KB)
Calindro's Hello World source

  View user's profile Send private message Visit poster's website
  • Joined: 07 Aug 2007
  • Posts: 220
  • Location: Yach, Germany
Reply with quote
Post Posted: Thu May 11, 2017 4:12 pm
I've now again tried to create ROMs that just display a background color. This time I did so based on the devkitSMS. One ROM (test.sms) using the legacy modes, one (test2.sms) using mode 4.

The result is the ususal: Works on emulators, doesn't work on my Mark III.

Philipp
test.tar.gz (16.07 KB)
Source and ROM

  View user's profile Send private message Visit poster's website
  • Joined: 07 Aug 2007
  • Posts: 220
  • Location: Yach, Germany
Reply with quote
Post Posted: Thu May 11, 2017 5:58 pm
gligli wrote
Hello, have you tried padding the ROM files (eg. with zeros) to the size of your eprom?
I sense maybe there's a problem with the flashing that depends on ROM size, that would explain why simple examples and your test ROMS don't work (eg. they often have non power of 2 sizes).


Just to check, I've now set my EPROM burner to 0x00-fill instead of 0xff-fill (and verified that it really works by reading out the chips after burning). 0x00-fill vs. 0xff-fill doesn't make a difference on the Mark III.

Philipp
  View user's profile Send private message Visit poster's website
  • Joined: 07 Aug 2007
  • Posts: 220
  • Location: Yach, Germany
Reply with quote
Post Posted: Thu May 11, 2017 6:06 pm
dhau wrote
I tested your rom on Mega Everdrive and it works fine: black text on light cyan background.


I assume that is due to the Everdrive initalizing the VDP before handing over control to the game.
I suspect that there is something in hardware initialization that I'm doing wrong while others are doing it right.

Philipp
  View user's profile Send private message Visit poster's website
  • Joined: 05 Sep 2013
  • Posts: 3825
  • Location: Stockholm, Sweden
Reply with quote
Post Posted: Fri May 12, 2017 7:16 am
I don't get it. Even using devkitSMS this time it doesn't work? I thought you had no problem whatsoever with games compiled with devkitSMS...
  View user's profile Send private message Visit poster's website
  • Joined: 07 Aug 2007
  • Posts: 220
  • Location: Yach, Germany
Reply with quote
Post Posted: Fri May 12, 2017 7:55 am
I got something working since this morning (cycling through colors in the border in mode 4); I'll report more when I know what makes the difference between what works and what doesn't.

Philipp
  View user's profile Send private message Visit poster's website
  • Joined: 07 Aug 2007
  • Posts: 220
  • Location: Yach, Germany
Reply with quote
Post Posted: Fri May 12, 2017 8:33 am
Just for reference: The attached demo tries to set the border color to white using mode 2 (test.c, test.sms) or mode 4 (test2.c, test2.sms). Both are based on devkitSMS.

In emulators, both work. On the Mark III, the mode 4 one does work, but the mode 2 one does not.

Philipp
halfworking.tar.gz (16.49 KB)
White border in mode 2 and 4

  View user's profile Send private message Visit poster's website
  • Joined: 07 Aug 2007
  • Posts: 220
  • Location: Yach, Germany
Reply with quote
Post Posted: Fri May 12, 2017 8:35 am
By replacing main() in test2.c in teh above post by


void main(void)
{
  SMS_write_to_VDPRegister(0, 0x02);
  SMS_write_to_VDPRegister(7, 0x0f);

  for(;;);
}


I can get a white border in mode 2 on the Mark III. So mode 2 seems to work, but only after doing the devkitSMS-style setup for SMS (but not after doing the devkitSMS-style setup for SG).

Philipp
  View user's profile Send private message Visit poster's website
  • Joined: 07 Aug 2007
  • Posts: 220
  • Location: Yach, Germany
Reply with quote
Post Posted: Fri May 12, 2017 9:19 am
I got the difference down to the RAM clear loop in the crt0. When I use the value for bc from the crt0_sms in the crt0_sg, it works.

Currently, I suspect that is a similar issue to the one in the thread "Getting Master Everdrive OS v8 working on SEGA MARK III".

That would explain, why my minimal demos failed, while even real games worked: The real games took their time to initialize theri data structures before initalizing the VDP. The minimal demos went straight to initalizing the VDP. THe VDp might take some time after power-on to become ready.

But fornow this is just a guess.

I'll do some more experiments today.

Philipp
  View user's profile Send private message Visit poster's website
  • Joined: 07 Aug 2007
  • Posts: 220
  • Location: Yach, Germany
Reply with quote
Post Posted: Fri May 12, 2017 9:29 am
Hmm, when I add a delay loop to the "Hello, world" from the very first post, I get garbage on screen instead of a black screen.

So the delay matters, and with the delay something works (such as the border colors), but there seems to be another problem, too.

Philipp
  View user's profile Send private message Visit poster's website
  • Joined: 05 Sep 2013
  • Posts: 3825
  • Location: Stockholm, Sweden
Reply with quote
Post Posted: Fri May 12, 2017 10:13 am
Does the Mark III has a boot ROM? Because my SMS II display a SEGA logo before booting the cartridge, so it means it already initialized the VDP at least once... if the Mark III has no such a thing (I don't really know) - then you might have found the problem.
  View user's profile Send private message Visit poster's website
  • Joined: 14 Apr 2013
  • Posts: 624
Reply with quote
Post Posted: Fri May 12, 2017 10:33 am
PkK wrote
I got the difference down to the RAM clear loop in the crt0. When I use the value for bc from the crt0_sms in the crt0_sg, it works.

Currently, I suspect that is a similar issue to the one in the thread "Getting Master Everdrive OS v8 working on SEGA MARK III".

That would explain, why my minimal demos failed, while even real games worked: The real games took their time to initialize theri data structures before initalizing the VDP. The minimal demos went straight to initalizing the VDP. THe VDp might take some time after power-on to become ready.

But fornow this is just a guess.

I'll do some more experiments today.

Philipp

It's my guess as well. That's why I've added the RAM cleanup code + some delay code.
In Alex Kidd there is code to delay for around 1 second which is called right after clearing RAM. Alex Kidd also has code to read from SEGA Keyboard so I guess it was written with Mark III support in mind.
The BIOSes use the same delay code as Alex Kidd.
  View user's profile Send private message Visit poster's website
  • Joined: 07 Aug 2007
  • Posts: 220
  • Location: Yach, Germany
Reply with quote
Post Posted: Fri May 12, 2017 7:02 pm
Heureka!

There are two issues in "Hello, world!" that make it not work on the Mark III.

1) The startup delay

2) The VDP registers 3 and 4

Now I have "Hello, world!" working. I can use the tiles in text mode and mode 4 reliably now.
I still have issues with other stuff (bitmap mode, sprites), but I feel that I've made quite some progress.

For 1), the "Hello, world!" apparently already treis to access the VDp, while the VDP is still in reset. A simple wait loop is an ok workaround.
For 2), the "Hello, world!" does not set VDP registers 3 and 4. The Sega documentation says they are to be set to 0xff. devkitSMS comments say they have no effect in mode 4. But my experiments indicate that they do have some masking functionality in mode 4: Without setting at least some of the lower bits, I get garbage on screen in "Hello,world!". Close investigation showed that that some of the upper bits of entries in the image table are ignored when these registers are set to values other than 0xff (it looked funny, when on the Io menu, all the numbers and special symbols were correct, but all characters were replaced by numbers and special symbols - characters 0 to 64 were displayed correctly, characters 65 to 128 were replaced by characters from 0 to 64, characters from 129 to 192 were correct again).

Philipp
  View user's profile Send private message Visit poster's website
  • Site Admin
  • Joined: 19 Oct 1999
  • Posts: 14738
  • Location: London
Reply with quote
Post Posted: Fri May 12, 2017 8:24 pm
Maybe testing VRAM writes and readback is a better way to wait for the VDP to be active. Systems with BIOS pause for this, most homebrew may not cater for it because they expect to run after a BIOS.
  View user's profile Send private message Visit poster's website
  • Joined: 05 Sep 2013
  • Posts: 3825
  • Location: Stockholm, Sweden
Reply with quote
Post Posted: Fri May 12, 2017 8:56 pm
PkK wrote
the "Hello, world!" does not set VDP registers 3 and 4. The Sega documentation says they are to be set to 0xff. devkitSMS comments say they have no effect in mode 4. But my experiments indicate that they do have some masking functionality in mode 4


Probably I should have written 'no use' instead of 'no effect'. In fact, there are side effects:

Charles MacDonald's docs wrote
Register $03 - Color Table Base Address

D7 - No effect
D6 - No effect
D5 - No effect
D4 - No effect
D3 - No effect
D2 - No effect
D1 - No effect
D0 - No effect

For the SMS VDP only, all bits should be set. Otherwise the VDP will fetch pattern data and name table data incorrectly.

Register $04 - Background Pattern Generator Base Address

D7 - No effect
D6 - No effect
D5 - No effect
D4 - No effect
D3 - No effect
D2 - No effect
D1 - No effect
D0 - No effect

For the SMS VDP only, bits 2-0 should be set. Otherwise the VDP will fetch pattern data and name table data incorrectly.
  View user's profile Send private message Visit poster's website
  • Joined: 07 Aug 2007
  • Posts: 220
  • Location: Yach, Germany
Reply with quote
Post Posted: Wed May 31, 2017 8:08 am
Maxim wrote
Maybe testing VRAM writes and readback is a better way to wait for the VDP to be active. Systems with BIOS pause for this, most homebrew may not cater for it because they expect to run after a BIOS.


Is such a wait in any BIOS? All I found in the commented asm BIOs listings linked at http://www.smspower.org/Development/BIOSes is a 1.7s wait.

Philipp
  View user's profile Send private message Visit poster's website
  • Site Admin
  • Joined: 19 Oct 1999
  • Posts: 14738
  • Location: London
Reply with quote
Post Posted: Wed May 31, 2017 3:58 pm
No, just the delays.
  View user's profile Send private message Visit poster's website
  • Joined: 07 Aug 2007
  • Posts: 220
  • Location: Yach, Germany
Reply with quote
Post Posted: Sun Jun 04, 2017 11:30 am
I am now able to get the mode 4 stuff, including sprites working on both Mark III and SMS II hardware. Thanks to everyone for their help. For any remaining issues (other modes) I'll open a new thread when I find time to look into them.

Philipp
  View user's profile Send private message Visit poster's website
Reply to topic



Back to the top of this page

Back to SMS Power!