[J-core] working on SH-2 emulator.
cr88192 at gmail.com
Tue Sep 6 01:46:46 EDT 2016
On 9/5/2016 1:29 AM, BGB wrote:
> but, seems to pass the "testbra" test at least.
> appears to currently be dying in "testmov".
> so, will probably go beat on it some more...
so, a general status update on this:
all the boot tests now pass, after a fair bit of debugging.
for some of the tests, it seemed like the solution to PC-relative loads
in the delay-slot was to recalculate the loads with an offset value of 6
rather than 4 (can't say for certain that this is correct, but it does
seem to pass the tests).
then I get this stuff (linebreaks inserted):
seems to be GDB related, probably not immediately relevant to my use-case.
that last number seems to vary between runs.
it seems to be in a loop where it reads characters, and I can give
characters to it.
not sure how to do much with this.
doesn't really seem to be a human-usable interface.
trying to boot the "vmlinux" image still doesn't work, as it still seems
to go into an infinite loop without it reading any input or producing
any output (albeit it appears to be going into an infinite loop in a
different place from before).
there are bugs the tests didn't test for (which prevent Linux from
the Linux kernel expects something else in order to start up?...
there is some mechanism needed to inform the kernel to direct any
output to the "uartlite" interface?...
(ex: magic data at magic addresses?...).
monitoring 0xABCD0000, don't see any activity
nor does it seem to be trying to access any other address
don't see anything obvious for this in the boot code (like
stuff for passing kernel parameters/...).
I actually have no idea what the code is doing here.
I guess if I had a linker map for this kernel I could reverse-lookup,
and try to figure out where in the kernel it is looping. I may need to
build the kernel from source to get the map though (but don't really
know the kernel config).
decided to leave out a disassembly and register dump.
but, yeah, at least in a basic sense the emulator seems to be working...
More information about the J-core