emufreak / iAmiga

iAmiga sources
44 stars 17 forks source link

Hires bitplanes 2 to 5 not drawn at the first horizontal 16 pixels #62

Closed mithrendal closed 7 years ago

mithrendal commented 7 years ago

img_8390

You see this clearly at the empty/full bar.

img_8389

Here I dragged the window some pixel more to the right.

@emufreak @simontoens @mdbergmann could someone confirm that it's a bug not only in my environment. These are still pics from the unpatched emu-core (e.g. Shrinked hires to lores). I want to be sure that I didn't broke it before I bring out the hires patch.

mithrendal commented 7 years ago

I have fixed this issue with this commit 72c6daaa1233b81dc7b973e22d9a1a273c11fa54 . The commit is part of the current pull request.

@simontoens @mdbergmann @emufreak

mithrendal commented 7 years ago

img_8394

Now it looks gorgeous, doesn't it?

simontoens commented 7 years ago

Looks great @mithrendal!

(also happy to see you are a fellow WB 1.2 user - as opposed to 1.3 :)

mithrendal commented 7 years ago

Next is the speed issues in cinemaware apps. I have an idea. It may be conjuncted to the fact that our emu doesn't draw all of the 256 PAL lines. It is restricted to draw only 240 which may also still include some offscreen pixels. Seems the output is restricted to NTSC. That may affect the vertical blank timing. And that in consequence may affect the timing of amiga apps when they rely on vblank timing. Will try this out today or tomorrow. @simontoens

simontoens commented 7 years ago

I wish I knew more about the emulator internals...I am glad you do - so are you saying that we don't support PAL mode correctly? Although I am always running in PAL mode..

mithrendal commented 7 years ago

Yeah maybe. Just look at drawings.cpp

define GFXVIDINFO_HEIGHT 240

define MAXBLOCKLINES 240

It does not draw more than 240 lines even if you are running in PAL. You also see this when you run for example deluxe paint and choose a 320x256 screen. You see there that the very bottom of the screen is left out.

But whether this also affects the vblank timing has to be seen... I will look into that the next days or so...