[emulation] hardware emulation trouble?

Got questions? Got answers? Go here for both.

Moderator: MaxCoderz Staff

King Harold
Calc King
Posts: 1513
Joined: Sat 05 Aug, 2006 7:22 am

Post by King Harold »

Oh, that wouldn't be very nice ;)
This is my code for LDIR:

Code: Select all

case 0xB0:  //LDIR
    Write(DE, Read(HL));
    DE++;
    HL++;
    BC--;
    flags[Flags.flags.PV] = BC != 0;
    flags[Flags.flags.N] = false;
    flags[Flags.flags.H] = false;
    if (BC != 0)
        PC -= 2;
    break;
edit: oh poo I found the problem, it wasn't hanging at all it was just going too slow (omg) (yes I know I'm stupid)
User avatar
Dwedit
Maxcoderz Staff
Posts: 579
Joined: Wed 15 Dec, 2004 6:06 am
Location: Chicago!
Contact:

Post by Dwedit »

Does it boot past that point?
You know your hexadecimal output routine is broken when it displays the character 'G'.
King Harold
Calc King
Posts: 1513
Joined: Sat 05 Aug, 2006 7:22 am

Post by King Harold »

Well it stops at 00A6 approximately, where it loops back to 00A0

I tried disassembling it but the disassembler didn't eat it (maybe its too large or something?)
User avatar
Dwedit
Maxcoderz Staff
Posts: 579
Joined: Wed 15 Dec, 2004 6:06 am
Location: Chicago!
Contact:

Post by Dwedit »

It's in a loop waiting for the LCD controller to return bit 7 clear.

Here's the Listing File of the bootloader so you don't need a disassembly.
You know your hexadecimal output routine is broken when it displays the character 'G'.
King Harold
Calc King
Posts: 1513
Joined: Sat 05 Aug, 2006 7:22 am

Post by King Harold »

Thanx
I'll go fix my LCD lol

edit: well it gets weirder, it gets all through it but then somehow manages to get stuck at 0029
User avatar
Dwedit
Maxcoderz Staff
Posts: 579
Joined: Wed 15 Dec, 2004 6:06 am
Location: Chicago!
Contact:

Post by Dwedit »

That is weird, since 0029 is a bunch of nops.
You know your hexadecimal output routine is broken when it displays the character 'G'.
King Harold
Calc King
Posts: 1513
Joined: Sat 05 Aug, 2006 7:22 am

Post by King Harold »

Yes I know
I'll have to look at that.. the nop code could hardly be broken since there is no code..

edit: well it's not really dead, it's alternating between something else and 0029 but that is still odd
Post Reply