January 23rd, 2008 by nkeynes
Linux booting
Posted in Development

After fixing some boneheadedness in the ASIC event code (and a whole passel of translator caching and other bugs), I’ve finally gotten to the login prompt:
Linux-dc login prompt
(to clarify, this is the dreamcast-linux-010605 ISO that Takeshi Yaegashi put together several years ago, running a modified 2.4.5 kernel)

Unfortunately (after the happy dance), it was at this point that I realised I haven’t actually implemented the keyboard yet, so it’s impossible to do anything useful with it. It’s also admittedly painfully slow to start, but I was expecting that (TLB lookup is currently near pessimal).

Anyway, working on the keyboard driver now ^_^.

PS: If anyone has a working link to this image, please let me know where it is (I’d like to keep a link to it) – my google-fu has utterly failed to turn up a good version as yet, and my own copy is only on a somewhat scratched CD…
Changes

  • Add VMA support to the SH4 disassembly functions
  • Handle out-of-page delay slot execution with emulation single-step
  • Finish translator breakpoint implementation
  • Fix a pair of long standing ASIC event bugs
  • Fix xltcache forgetting to clear references to blocks before overwriting them
  • Fix recovery + backpatch records not being position independent (big duh!)
  • Fix yet another translate block bounds overrun
  • Fix MAC.L/MAC.W exception handling (broke the stack if the second arg caused an exception)
  • Fix various other minor bugs

Update: Just hacked together a quick keyboard driver, able to login and launch X now. Excellent…

6 Responses to “Linux booting”

  1. nkeynes says:

    That looks like the one, thanks for the links.

    Cheers,
    Nathan

  2. fackue says:

    Does this compile under Windows?

  3. nkeynes says:

    fackue: No idea. If you’re lucky you might be able to get it to work using cygwin (with their X11 port) – feel free to try it and let me know how it goes :)

    If anyone’s interested in doing a “real” port, I’d be more than happy to integrate the changes, but personally I don’t see a lot of point in working on it at the moment when we’re not even at parity with the existing win32 dreamcast emulators.

  4. fackue says:

    I tried it a few days ago under Cygwin but it couldn’t find the OpenGL library even after I downloaded the OpenGL packages from the Cygwin installer.

  5. nkeynes says:

    Okay, just because I was curious…

    CFLAGS=-I/usr/X11R6/include LDFLAGS=-L/usr/X11R6/lib ./configure

    (cygwin puts the GL files under /usr/X11R6, where configure doesn’t currently look)

    cd src
    make gendec.exe lxdream.exe

    (The dependency for gendec doesn’t work in win32 atm, but that’s easy enough to work around)

    ./lxdream.exe

    And to my moderate surprise, it actually started up normally at that point (with X11 running of course). Kudos are in order for the cygwin guys, I think.

Leave a Reply

You must be logged in to post a comment.