View Issue Details
71 [lxdream] Porting major always 2010-07-10 22:15 2010-07-12 06:39
ElBarto  
nkeynes  
normal  
resolved 0.9  
fixed  
none    
none  
   
Add support for pkg-config to libgl and libisofs
Hello,
I've made a patch to detect automatically (via pkg-config) libgl and libisofs.
I don't know about linux distro but my FreeBSD have the required .pc files.
lxdream.diff (2,921) 2010-07-10 22:15
http://www.lxdream.org/issues/file_download.php?file_id=4&type=bug
Notes
(0000088)
nkeynes   
2010-07-12 06:38   
Committed as r1110





View Issue Details
68 [lxdream] SH4 crash always 2009-05-14 08:48 2009-05-24 01:31
losinggeneration  
nkeynes  
normal  
resolved  
fixed  
none    
none  
   
sh4_finalize_instruction: Assertion `(sh4_icache.page_vma == ((sh4r.pc) & sh4_icache.mask))' failed.
Ran into this while trying a test:
gdb --args ./lxdream /usr/local/dc/kos/examples/dreamcast/hello/hello.elf
GNU gdb 6.8-debian
Copyright (C) 2008 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html> [^]
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-linux-gnu"...
(gdb) r
Starting program: /home/harley/Downloads/lxdream/src/lxdream /usr/local/dc/kos/examples/dreamcast/hello/hello.elf
[Thread debugging using libthread_db enabled]
[New Thread 0x7f877b7e5810 (LWP 8389)]
[New Thread 0x7f8766f42950 (LWP 8399)]
[Thread 0x7f8766f42950 (LWP 8399) exited]
[New Thread 0x7f8766f42950 (LWP 8400)]
[New Thread 0x7f8766741950 (LWP 8401)]
10:24:32 A0000000 WARN Unable to load file 'IP.BIN': No such file or directory

--
KallistiOS ##version##: Wed May 13 13:39:27 CDT 2009
  harley@little-jack:/usr/local/dc/kos
thd: pre-emption enabled, HZ=100
10:24:32 8C021B6E WARN ARM Halted: BRANCH to invalid address FFFFFFE8 at 00000004
maple: active drivers:
    Dreameye (Camera): Camera
    Sound Input Peripheral: Microphone
    PuruPuru (Vibration) Pack: JumpPack
    VMU Driver: Clock, LCD, MemoryCard
    Mouse Driver: Mouse
    Keyboard Driver: Keyboard
    Controller Driver: Controller
  DMA Buffer at ac0923c0
vid_set_mode: 640x480IL NTSC
fs_romdisk: mounting image at 0x8c0489d4 at /rd
dc-load console support enabled
maple: attached devices:
  A0: Dreamcast Controller (01000000: Controller)

Hello world!

fs_iso9660: disc change detected
arch: shutting down kernel
net_unreg_device: 'bba' isn't registered
maple: final stats -- device count = 1, vbl_cntr = 4, dma_cntr = 4
vid_set_mode: 640x480IL NTSC
fs_romdisk: unmounting image at 0x8c0489d4 from /rd
max system bytes = 147908
system bytes = 147908
in use bytes = 5852
KM_DBG: Still-allocated memory blocks:
  INUSE 8c0ac578: size 12, thread 1, addr 8c0104d8, type malloc
  INUSE 8c0abf70: size 1024, thread 1, addr 8c03f594, type malloc
  INUSE 8c091280: size 2, thread 1, addr 8c040a82, type malloc
  INUSE 8c090be8: size 12, thread 1, addr 8c0104d8, type malloc
  INUSE 8c0909c0: size 12, thread 1, addr 8c02dd94, type malloc
  INUSE 8c08ebf0: size 12, thread 1, addr 8c01e8f2, type malloc
  INUSE 8c08e5e8: size 1024, thread 1, addr 8c03f594, type malloc
lxdream: ./sh4/sh4core.in:242: sh4_finalize_instruction: Assertion `(sh4_icache.page_vma == ((sh4r.pc) & sh4_icache.mask))' failed.

Program received signal SIGABRT, Aborted.
[Switching to Thread 0x7f877b7e5810 (LWP 8389)]
0x00007f8777b27fb5 in raise () from /lib/libc.so.6
(gdb) bt
#0 0x00007f8777b27fb5 in raise () from /lib/libc.so.6
0000001 0x00007f8777b29bc3 in abort () from /lib/libc.so.6
0000002 0x00007f8777b20f09 in __assert_fail () from /lib/libc.so.6
0000003 0x000000000041d8a8 in sh4_finalize_instruction () at ./sh4/sh4core.in:242
0000004 0x00000000004189b5 in sh4_core_exit (exit_code=2) at sh4/sh4.c:306
0000005 0x0000000000416f2e in dreamcast_stop () at dreamcast.c:255
0000006 0x0000000000410793 in dcload_syscall (syscall_id=8389) at dcload.c:151
0000007 0x00000000004509fd in sh4_translate_run_slice (nanosecs=1000000) at sh4/sh4trans.c:50
0000008 0x0000000000418b39 in sh4_run_slice (nanosecs=1000000) at sh4/sh4.c:271
0000009 0x000000000041728f in dreamcast_run () at dreamcast.c:233
0000010 0x0000000000456cfd in gui_main_loop (run=1) at gtkui/gtkui.c:251
0000011 0x000000000040c9f0 in main (argc=2, argv=0x7fff8392de68) at main.c:270

and here's the code (don't laugh since I was just doing a quick test) that causes the crash:
cat hello.c
#include <kos.h>
extern uint8 romdisk[];
KOS_INIT_FLAGS(INIT_DEFAULT | INIT_MALLOCSTATS);
KOS_INIT_ROMDISK(romdisk);

int main(int argc, char **argv) {
    printf("\nHello world!\n\n");
    file_t cd = fs_open("/cd", O_DIR);
    if(!cd)
        return 1;

    dirent_t *cddir;
    while((cddir = fs_readdir(cd)))
        printf("%s\n", cddir->name);

    return 0;
}

I'm not currently able to test it on real hardware, but it /should/ work. When I get home from work tonight I'll give it a try. Attached is the crash log in case this butchers the formatting of the code and backtrace.
This was against SVN Rev 1033
lxdream.crash (3,983) 2009-05-14 08:48
http://www.lxdream.org/issues/file_download.php?file_id=3&type=bug
Notes
(0000077)
nkeynes   
2009-05-24 00:50   
D'oh. Yeah your code is fine, it's crashing when it tries to halt after program completion. Stupid bug on my part, will fix shortly.
(0000078)
nkeynes   
2009-05-24 01:31   
Fixed in r1034





View Issue Details
67 [lxdream] GD-Rom minor always 2009-03-18 04:39 2009-03-24 04:35
efry  
nkeynes  
normal  
resolved  
fixed  
none    
none  
   
cdi bug x86_64 OS X
Hi Nathan,

I tried compiling lxdream with -arch x86_64 on OS X and I came across a bug with the cdi image loading code.

in cdi.c

The code to seek to the header_offset is broken for CDI_V35_ID

You need to cast to long when using a negative offset.

I changed the code to

    if( trail.cdi_version == CDI_V35_ID ) {
        fseek( f, -(long)trail.header_offset, SEEK_END );
    } else {
        fseek( f, trail.header_offset, SEEK_SET );
    }

which seemed to get it working again.

Regards,
Eric
Notes
(0000076)
nkeynes   
2009-03-24 04:35   
Ouch that's subtle, and the compiler doesn't even have the grace to warn about the implicit conversion. Thanks for finding this. I've changed it as you suggested





View Issue Details
65 [lxdream] Host minor sometimes 2008-10-05 02:06 2008-10-24 16:21
nkeynes  
nkeynes  
normal  
resolved  
fixed  
none    
none  
   
0.9
texcache invariant failure
As reported by sky:
Same configuration, with Sega Extrem Sports. It happen on game loading, once on two.

Code:

18:24:50 8C00B8FA WARN Attempted byte read to missing page: A0600004
Active list: 205, 215, 214, 213, -1, -1, -1, 189, 204, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 181, 201, -1, 166, -1, -1, -1, 241, -1, -1, -1, -1, -1, -1, -1, -1, 215, -1, -1, -1, -1, -1, -1, 206, -1, 116, -1, 249, -1, 212, -1, -1, -1, -1, -1, -1, -1, 203, -1, 175, 207, -1, -1, -1, -1, -1, -1, -1, -1, -1, 162, -1, -1, -1, -1, -1, 211, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 6, 239, -1, -1, -1, -1, -1, 230, 167, -1, -1, -1, 115, -1, -1, 224, 148, 174, 187, 208, -1, -1, -1, -1, -1, 169, 253, -1, -1, -1, -1, -1, -1, -1, -1, 135, 211, 200, 202, 209, 195, -1, -1, -1, -1, -1, -1, -1, -1, -1, 192, -1, -1, -1, 177, -1, -1, 210, -1, 243, -1, -1, -1, -1, -1, 167, -1, -1, 164, -1, -1, -1, -1,
pvr2/texcache.c:576: failed assertion `next != slot'

Program received signal SIGABRT, Aborted.
0x9003d66c in kill ()
(gdb) bt
#0 0x9003d66c in kill ()
0000001 0x9010e8cf in raise ()
0000002 0x9010d422 in abort ()
0000003 0x0005cebd in __eprintf ()
0000004 0x000332cc in texcache_get_texture ()
0000005 0x00035cd4 in pvr2_scene_load_textures ()
0000006 0x00036360 in pvr2_scene_render ()
0000007 0x0002d8d5 in mmio_region_PVR2_write ()
0000008 0x0e3729f3 in ?? ()
Previous frame inner to this frame (gdb could not unwind past this frame)
Notes
(0000075)
nkeynes   
2008-10-24 16:21   
texcache_init failed to reset all state correctly. Fixed in 0.9





View Issue Details
32 [lxdream] PVR2 minor always 2007-02-11 16:41 2008-10-15 18:05
nkeynes  
nkeynes  
normal  
resolved M2  
fixed  
none    
none  
   
0.9
Implement shader programs (GLSL)
PVR2 seems to do colour clamping after computing the final fragment colour, unlike the GL fixed-function pipeline which clamps each component separately prior to interpolation. Note that we're likely to need this for correct fogging as well.
Also as a bonus, after this we can rip rendbkg.c out almost completely.

1. Add test cases for PVR2 behaviour. At least Tex modulate and Quad tests needed to confirm the above.
2. Add simple shader programs as above
3. Remove obsolete hacks

Fallback: In the absense of GLSL support, system should run normally using the fixed-function pipeline - it will just be less accurate.
Notes
(0000074)
nkeynes   
2008-10-15 18:05   
Done, as far as I can tell from what was originally noted





View Issue Details
8 [lxdream] PVR2 minor always 2006-07-03 23:36 2008-10-15 18:04
nkeynes  
nkeynes  
normal  
resolved  
fixed  
none    
none 0.9  
   
0.9
Implement render-to-texture
Currently broken.
Notes
(0000030)
nkeynes   
2007-02-11 15:28   
Target for M3. Substantially easier to implement now, main issues to watch are
a) texture buffer management/pooling (textures should come from the texture pool, not the render pool). Rendered textures need to appear in the texcache automatically (or be otherwise findable by texcache_load_texture)
b) correct handling of stride textures. Can either i) always render to POT textures, or ii) manually freak with the texture coordinates. i) has issues if the stride U-size is different to what we expect, but is isolated. ii) will always be correct as long as the texture coords are actually within the rendered texture, but requires render_vertexes to know about the texture.

Need to test stride behaviour when tex coords are "out of bounds"
(0000073)
nkeynes   
2008-10-15 18:04   
Implemented with vram writeback for now. Optimize later





View Issue Details
61 [lxdream] Porting feature N/A 2008-07-29 04:42 2008-08-06 02:39
bsdmaniak  
nkeynes  
normal  
resolved  
fixed  
none    
none  
   
OpenBSD Ports
I have trying to ports lxdream to OpenBSD. For the moment it's just compile fine. But i haven't try to compile SVN. GLX and esd don't run the emulator is unusable for the moment
patches.tgz (1,479) 2008-07-29 04:42
http://www.lxdream.org/issues/file_download.php?file_id=2&type=bug
Notes
(0000066)
nkeynes   
2008-07-30 15:57   
Thanks, applied with some minor changes (r815).

I would have expected GLX & ESD to be more or less the same between *BSD and linux, but admittedly hardware 3D support in the X.org server ranges from weak to nonexistent...
(0000067)
bsdmaniak   
2008-07-31 10:50   
(edited on: 2008-07-31 14:50)
With 0.8.4 release i have video but not sound. I trying to use DRI because it's very slow.

My X server crash when I close lxdream. If you have any idea.

You stuff in mac os X it's certainly in part compatible with *BSD because mac os is based on this.

(0000069)
bsdmaniak   
2008-08-01 09:27   
bug with GLX fixed it's a problem in mesa
(0000071)
bsdmaniak   
2008-08-04 14:55   
You can change status to closed glx & esd work without patching lxdream
(0000072)
nkeynes   
2008-08-06 02:39   
Nice, thanks muchly





View Issue Details
64 [lxdream] Host minor always 2008-08-03 17:08 2008-08-03 23:03
nkeynes  
nkeynes  
normal  
resolved 0.8.4  
fixed  
none    
none  
   
0.9
OS X 64-bit build crashes in translator
Probably pointer sloppiness - OS X organizes memory a little differently
Notes
(0000070)
nkeynes   
2008-08-03 23:03   
Fixed in r819





View Issue Details
44 [lxdream] Porting minor always 2007-11-26 15:08 2008-07-31 21:24
nkeynes  
nkeynes  
normal  
resolved 0.8  
fixed  
none    
none 0.8.4  
   
0.8.4
Mac OS X Port
Primarily need the CD driver and audio driver - a native video driver is probably not viable without a native UI, and that's going to take too long for the current release.
Notes
(0000064)
nkeynes   
2008-06-29 21:05   
(edited on: 2008-06-29 21:11)
Bring forward to 0.9 - Mostly done now. Remaining points to finish off for the OSX port:
  * Complete CD driver (to same std as linux driver at least)
  * Implement dialog boxes for path + control settings.
  * Fix internationalization support.
  * Joystick support

(0000068)
nkeynes   
2008-07-31 21:24   
Done except for joystick driver - punting that one for later





View Issue Details
60 [lxdream] SH4 minor always 2008-07-05 17:46 2008-07-20 18:43
nkeynes  
nkeynes  
normal  
resolved 0.8.3  
fixed  
none    
none  
   
0.9
Crash in sh4 translation
Reported by Arthonis with Ready To Rumble 2. No other way known to reproduce as yet. Backtrace:

0000004 0x08075268 in xlat_promote_to_temp_space (block=0xb3fa7fec)
    at sh4/xltcache.c:373
0000005 0x08075515 in xlat_extend_block (newSize=1303511014) at sh4/xltcache.c:433
0000006 0x080aa5cf in sh4_translate_basic_block (start=2351005696)
    at sh4/sh4trans.c:174
0000007 0x080aa321 in sh4_xlat_run_slice (nanosecs=1000000) at sh4/sh4trans.c:91
0000008 0x0805bee2 in dreamcast_run () at dreamcast.c:194
newSize at 0000005 is ridiculously wrong - uncertain if it's the cause or a side-effect of the actual crash.
Notes
(0000065)
nkeynes   
2008-07-20 18:43   
Fixed crash.

Leaving root cause / compatibility issue for later





View Issue Details
51 [lxdream] Host minor always 2008-01-29 22:59 2008-06-29 20:51
nkeynes  
nkeynes  
normal  
resolved  
fixed  
none    
none  
   
0.9
OSMesa (software rendering) support
For people with intel and the like cards that are never going to work w/ hardware acceleration
For 0.9 we definitely want a software renderer. Start with OSMesa, but will probably end up implementing renderer directly per the hardware - only way we're ever going to be pixel accurate.
Notes
(0000063)
nkeynes   
2008-06-29 20:51   
Done (for some time) for GDK, so slow that there's probably no point in developing further for now.





View Issue Details
29 [lxdream] PVR2 minor always 2007-02-06 19:05 2008-06-29 20:33
nkeynes  
nkeynes  
normal  
resolved M2  
fixed  
none    
none  
   
0.9
Frustum clipping bug
Polygons subject to view frustum clipping appear to have badly distorted texture coordinates wrt clipped vertexes (colour coordinates are probably equally distorted. Opengl information suggests that the problem may be caused by non-planar polygons - check if the 1/z is correct?

Otherwise may need to do our own clipping, which is annoying but doable.
Notes
(0000062)
nkeynes   
2008-06-29 20:33   
Resolved a long time back with introduction of w coords





View Issue Details
57 [lxdream] Host minor always 2008-02-24 15:49 2008-04-26 20:12
nkeynes  
nkeynes  
normal  
resolved 0.8.3  
fixed  
none    
none  
   
0.9
Add configure test for framebuffer support
It's possible some older libGLs won't actually have the fbo entry points - add configure test to disable FBO support when missing. As reported by losinggeneration in http://www.lxdream.org/forums/viewtopic.php?t=104 [^]
There are no notes attached to this issue.





View Issue Details
56 [lxdream] AICA minor always 2008-02-18 19:59 2008-02-19 19:04
nkeynes  
nkeynes  
normal  
assigned 0.8  
open  
none    
none  
   
0.9
KOS s3mplay broken
looks like it hasn't worked for a long time :(
Notes
(0000061)
nkeynes   
2008-02-19 19:04   
Timer interrupt handling is still fubared... needs testing against hardware





View Issue Details
55 [lxdream] GUI minor always 2008-02-11 17:08 2008-02-12 00:36
nkeynes  
nkeynes  
low  
resolved  
fixed  
none    
none 0.9  
   
0.9.1
Fix relative path handling for open/save dialogs
Currently if the configured path is relative, the dialog will complain about it:

libgnomevfs-CRITICAL **: gnome_vfs_get_uri_from_local_path: assertion `g_path_is_absolute (local_full_path)' failed

probably need to convert relative paths first before it gets to that point.
There are no notes attached to this issue.





View Issue Details
25 [lxdream] PVR2 minor always 2007-01-16 20:27 2008-02-03 18:23
nkeynes  
nkeynes  
normal  
assigned  
open  
none    
none  
   
0.9
Texture test cases
Need to create some images to use for testing the texture loading code - it's been pretty fragile of late and there's quite a few variants, including more than a couple that aren't supported at all yet.
* Formats: ARGB1555, RGB565, ARGB4444, Index4(various palette formats), Index8(various palette formats), YUV422, Bump map.
* Variants: Mip-mapped, twiddled, compressed, stride, square/rectangular, tex-alpha-ignore?
There are no notes attached to this issue.





View Issue Details
36 [lxdream] PVR2 major always 2007-10-31 16:09 2008-02-03 18:08
nkeynes  
nkeynes  
normal  
assigned 0.8  
open  
none    
none  
   
Poor render performance
Proposed fix is to parse the polygon data into a more direct form (possibly in VBOs) and render from there with arrays. If we can collapse the tiling even better
There are no notes attached to this issue.





View Issue Details
37 [lxdream] GD-Rom minor always 2007-11-03 20:36 2007-11-07 04:11
nkeynes  
nkeynes  
normal  
resolved 0.8  
fixed  
none    
none  
   
Implement nulldc's GDI format
Nice for direct GD dumps
Notes
(0000042)
nkeynes   
2007-11-03 21:18   
Documentation link:
http://forums.ngemu.com/nulldc-discussion/87596-undocumented-nulldc-features.html [^]
(0000044)
nkeynes   
2007-11-07 04:11   
Probably not complete since doco isn't exhaustive, but seems to work ok.





View Issue Details
19 [lxdream] GD-Rom minor always 2006-09-12 18:13 2007-10-31 15:54
nkeynes  
nkeynes  
low  
resolved M1  
fixed  
none    
none  
   
M4
Implement native cd driver
As opposed to image-based drivers. We can support either libcdio or direct linux (or possibly both). Can we depend on libcdio being installed?
Notes
(0000009)
nkeynes   
2006-09-12 18:14   
Also note UI issues with this bug - Mount needs to be able to select either a real device or an image file.
(0000010)
anonymous   
2007-01-01 03:52   
Basic linux MMC driver is in for M2 now.
(0000016)
nkeynes   
2007-01-15 15:49   
Remaining issues:
  * Driver should detect disc eject/insert and instruct the GD core accordingly. Most importantly it needs to flush the cached TOC.
  * Not all read modes supported (and easily can be)
  * Should split into linux-specific and generic MMC modules.
  * Linux-specific file needs to be protected by configure so its not compiled on non-linux systems.
  * Error codes should be checked to ensure they're recognized DC error codes, and remap them if not.
  * No way to attach the device through UI - something like the way VMware does it would be nifty
(0000028)
nkeynes   
2007-02-06 18:09   
(edited on: 2007-02-06 18:10)
Fixed the first 2 points.

3 and 4 are portability concerns - deferring to future version.
5 is hard to do without a full list of possible codes - deferred
6 will be done as part of the UI rewrite

(0000041)
nkeynes   
2007-10-31 15:54   
Resolving this as done





View Issue Details
10 [lxdream] PVR2 minor always 2006-08-03 19:13 2007-01-29 16:02
nkeynes  
nkeynes  
normal  
resolved  
fixed  
none    
none M2  
   
M2
Backplane rendering
Current backplane code is a quick hack - need to fully analyse the control word, and (hopefully) reuse the core renderer for output.
Notes
(0000006)
nkeynes   
2006-09-11 21:36   
Implemented now to the level of the main render core (ie supports gradient colour, texture, blending, but not shadow volumes or spec. texture)

Still todo:
* Bit-twiddle tests with the bg mode word (currently not used at all except to get the address of the background triangle
* Add system tests with texture, blending, etc.
* Unit tests of computation routines?
(0000025)
nkeynes   
2007-01-29 16:02   
Finish remainder of the backplane control word - should work for pretty much everything now, so closing this bug. Most (all?) of the complexity should go away in M3 anyway.





View Issue Details
16 [lxdream] PVR2 minor always 2006-09-12 17:43 2007-01-28 20:10
nkeynes  
nkeynes  
high  
resolved  
fixed  
none    
none  
   
M2
Polygon blending incorrect
Initial tests of the blend modes show that at least some of them are wrong. Need to finish putting together a full test set and then fix up the renderer accordingly.

Additionally, need to determine what bits 24-25 in the blend mode word actually do, as Maiwe's doc doesn't seem to be correct.
Notes
(0000018)
nkeynes   
2007-01-16 14:55   
Fixed tex blend mode 01 - was GL_BLEND, should be GL_MODULATE, except that fragment alpha is ignored (effectively needs to be forced to 1.0). Alpha forcing to be done soon (may be required by other flags as well).
(0000024)
nkeynes   
2007-01-28 20:10   
Add alpha force for modulate RGB, which finishes that section. Nothing seemed to notice, not surprisingly.





View Issue Details
15 [lxdream] AICA minor always 2006-09-12 17:38 2007-01-28 14:58
nkeynes  
nkeynes  
normal  
resolved M1  
fixed  
none    
none  
   
M2
Fix/implement AICA command port and DMA
Currently there's no sound hooked up as the AICA and SH4 just aren't communicating. The command port on the AICA needs to be done, as do the DMA channels. The bigger problem is finding what needs to be done to jump-start the transfers, as currently everything seems to be waiting for something to happen.
Notes
(0000019)
nkeynes   
2007-01-21 17:20   
DMA channels are partially implemented now, although it hasn't helped much as yet. The previously identified "command port" is looking increasingly like it might be a debug/development artifact - there does not appear to be any way to actually write to it.
(0000021)
nkeynes   
2007-01-28 14:58   
Closing this off as it doesn't appear there's any more to do besides fixing bugs as they are discovered





View Issue Details
20 [lxdream] PVR2 minor always 2007-01-01 04:12 2007-01-07 21:43
nkeynes  
nkeynes  
high  
resolved M1  
fixed  
none    
none  
   
syncstat / beampos way off
Initial tests show that the emu doesn't remotely correspond to reality for this register.

Need to at least fix the sync timings for NTSC / PAL (good enough for now), or long term derive them properly from the timing registers.

Also need to check the timing of the VBLANK event wrt syncstat, and whether it clears automatically or not.
Notes
(0000011)
nkeynes   
2007-01-07 21:43   
Committed in detailed support, tested with PAL and NTSC - may not be correct for other display modes.





View Issue Details
9 [lxdream] PVR2 major always 2006-08-03 19:06 2006-08-03 19:07
nkeynes  
nkeynes  
normal  
assigned  
open  
none    
none  
   
0.9
Renderer tracking bug
General tracking bug for all renderer related issues.

Note: need to setup a test framework for rendering tests, in similar vein to the TA test suite.
There are no notes attached to this issue.





View Issue Details
1 [lxdream] SH4 Periph tweak always 2006-07-01 23:13 2006-07-02 02:10
nkeynes  
nkeynes  
low  
assigned  
open  
none    
none  
   
PCTRA/PDTRA buginess
Low 4 bits of PDTRA should generally be returned as 0 regardless of setting of PCTRA, except during the video init sequence. Currently it's returning odd values at times.
Rough pseudo-code of the init sequence is below. (prior to this it resets the PVR2, need to test whether the below is sufficient, or it only works following the reset. The wait is quite short (just under 70 instructions max)

init_pctra()
{
    unsigned int *pctra = 0xff80002c
    unsigned int *pdtra = pctra+1
    unsigned int old_pctra = *pctra;

    *pctra |= 0x08;
    *pdtra |= 0x03;
    wait_gpio( pdtra, 0x03 );
    
    *pctra |= 0x03;
    wait_gpio( pdtra, 0x03 );

    *pdtra &= 0xFE;
    wait_gpio( pdtra, 0x00 );

    *pctra = old_pctra | 0x08;
    wait_gpio( pdtra, 0x03 );

    *pctra |= 0x04;
    wait_gpio( pdtra, 0x03 );

    *pdtra &= 0xFD;
    wait_gpio( pdtra, 0x00 );

    *pctra = old_pctra;
}
There are no notes attached to this issue.