Indeed. I, for one, am extremely happy to see this emulator.
By the way, MESS's N64 emulator isn't that bad anymore. Sure, it only runs at half framerate, but keeping in mind how insanely low level MESS gets, along with aiming for cross-platform builds, I wouldn't be surprised to see this emulator running 100% on current hardware.
Oh, and you should just ignore mudlord. bsnes got its fame for a reason.
Ok, now i know where the problem is. The y scale factor is set to 0 by the line demo. So i apply the normal formula it's always displaying the same line on the whole screen. But if i launch the demo on a real n64 it works. So i guess 0 is a special value. I don't know if anyone here have n64 technical knowledge but if you do, i'd be glad to hear what you think about this![]()
Interesting, how this rom run on real hardware? This would maybe mean N64 has kind of implicit scale values? From what I know, VI_Y_SCALE_REG (Are we talking about this one?) is mainly 0x400 (1x) or 0x800 (2x).Ok, now i know where the problem is. The y scale factor is set to 0 by the line demo.
I know MarathonMan has some hack to read N64 registers (am I right?) If so it could be interesting to have the VI_Y_SCALE_REG register value (and others maybe) for this specific rom.
And about this? :Yes that''s this register. The rom set a normal value for xscale but 0 for yscale,
It seems that the yscale register is not set from the beginning. If it's not set, it could be interesting to see how real N64 behave to such situation (And we could discover an implicit behaviour).Narann said:EDIT: Reading this, it seems that some register values are not always setted.
I was referring to your N64's image with all the cords over it, I was thinking it was intent to dump the registers, and so, see which state they are, and so, see if N64 set yscale or not.I haven't modeled the AI/VI/PI at all. Just emulate, the same way all other HLEs do now.
[VIF]: "VIRegWrite: Writing to register [VI_INTR_REG]."
[VIF]: "VIRegWrite: Writing to register [VI_H_START_REG]."
[VIF]: "VIRegWrite: Writing to register [VI_CURRENT_REG]."
[VIF]: "VIRegWrite: Writing to register [VI_STATUS_REG]."
[VIF]: "VIRegWrite: Writing to register [VI_ORIGIN_REG]."
[VIF]: "VIRegWrite: Writing to register [VI_WIDTH_REG]."
[VIF]: "VIRegWrite: Writing to register [VI_INTR_REG]."
[VIF]: "VIRegWrite: Writing to register [VI_CURRENT_REG]."
[VIF]: "VIRegWrite: Writing to register [VI_BURST_REG]."
[VIF]: "VIRegWrite: Writing to register [VI_V_SYNC_REG]."
[VIF]: "VIRegWrite: Writing to register [VI_H_SYNC_REG]."
[VIF]: "VIRegWrite: Writing to register [VI_LEAP_REG]."
[VIF]: "VIRegWrite: Writing to register [VI_H_START_REG]."
[VIF]: "VIRegWrite: Writing to register [VI_V_START_REG]."
[VIF]: "VIRegWrite: Writing to register [VI_V_BURST_REG]."
[VIF]: "VIRegWrite: Writing to register [VI_X_SCALE_REG]."
if (vi->regs[VI_Y_SCALE_REG] == 0)
y_scale = 1;
It is quite possible that the game was developped on an emulator
Some people may call it regression but i find it quite cool that this does not work on this emulator![]()
Hahaha If a such rom would have pass a Nintendo validation process, I guess they would have send a hard message: "This guy don't even set the y scale, RTFM noob!"It is quite possible that the game was developped on an emulator![]()
I agree, this is what accuracy is supposed to be no?Some people may call it regression but i find it quite cool that this does not work on this emulator![]()
1, If i boot another rom and upload line.v64 without turning of the n64, when i reset i see the game title screen. The cursor is slightly moving to the bottom left corner exactly as on my emulator and i can't move it with the controller.
2. If i switch off the n64 and switch it on afterwards, i can't see the title screen.
Some people may call it regression but i find it quite cool that this does not work on this emulator![]()