What's new

Announcement: Cycle-accurate N64 development underway.

Zuzma

New member
The filters are disabled most likely for a speed increase. Angrylions plugin does support it which his is based on.
 

Nintendo Maniac

New member
I think the texture filtering IS there, it's just that the rendering resolution is so low (320x240) and is being blown up 200% via nearest-neighbor that it looks somewhat pixelated - hence my half-sarcastic remark about forcing the N64's 640x480 high-res mode.
 

GPDP

New member
so I'm looking at the video again...

is it just me or have you not implemented bilinear/trilinear sampling yet? seeing as that was one of the major things that set apart the n64's 3d abilities from those of the playstation...

If you're talking about the N64's texture filtering, I'm pretty sure that is implemented, else the textures would look much more pixellated. What isn't implemented, however, is the VI filter:

For now, it's just (an old version of) angrylion's RDP software-renderer with the filters stripped out.
 
F

Fanatic 64

Guest
so I'm looking at the video again...

is it just me or have you not implemented bilinear/trilinear sampling yet? seeing as that was one of the major things that set apart the n64's 3d abilities from those of the playstation...
Bilinear/Trilinear filtering is the texture filter, and it's pretty clear it's emulated, else the textures would be all pixelated. I think you're talking about the overall picture jaggedness, which is because it is being rendered at twice it's native resolution (I asked MarathonMan about adding native resolution rendering, and he said he wouldn't because he thinks it's fairly useless, although I myself still think it would be a good idea to have the option rather than always forcing 640x480 upscaled output).
 

Zuzma

New member
Yup it looks like texture filtering is enable. I didn't really watch the video too closely. Looks like coverage emulation is disabled though.. I think that's what it's called. Whatever that smeary screen filtering is anyway.
 

GPDP

New member
Well, if you ask me, the filter looks ugly as sin anyway, at least when the filtered image is upscaled past the native resolution through nearest neighbor. I guess it looks ok on a CRT TV, which was, of course, the intended display at the time, but on modern screens, yuck! And yet, it is kind of necessary for certain things to look right, and well, having it off wouldn't exactly be accurate to the real console's actual video output.

Still, I do hope we have the option to turn it off or on.
 

Zuzma

New member
Maybe the best of both worlds. Still have the filter, but have an alternative version of it tuned better to look good on an LCD monitor.
 

Nintendo Maniac

New member
So I've gotten my hands on a Phenom II 920, and was wondering how I'd be able to test out CEN64 - or heck if I'm even able to. I realize it'll be slow, but I want to try to record something at a low framerate and then manually speed up the video.

...though another issue is that I'm no Linux guru and am essentially forced to be a Windows user due to various applications I use.

(yes I know about WINE, it didn't work for my needs last time I tried it)
 

zoinkity

New member
From the debug output, you're running just a little under 1/3 normal speed, correct?
IIRC optimistically it ran ~30Mhz on console, closer to 20Mhz at spots like the balloons at the start of a course and when it loads a bunch of stuff as you round a curve.

Incidentally, Mario Kart 64 is a higher-demand title on top of being questionably emulated elsewhere, plus it's high profile. Kudos on a very good test choice ;*)
 
OP
MarathonMan

MarathonMan

Emulator Developer
Star Fox 64 is now fully playable. No audio, but everything else works great and it looks awesome. I'm able to run at a full 60 VI/s on my desktop for some parts of the game, even.

EDIT: Minor glitch when the laser fires, but I don't see anything else wrong. Could be unimplemented instructions or something I haven't gotten around to yet; not sure.

EDIT 2: Also appears to be a framebuffer issue as the health bars are not rendering.

So I've gotten my hands on a Phenom II 920, and was wondering how I'd be able to test out CEN64 - or heck if I'm even able to. I realize it'll be slow, but I want to try to record something at a low framerate and then manually speed up the video.

...though another issue is that I'm no Linux guru and am essentially forced to be a Windows user due to various applications I use.

(yes I know about WINE, it didn't work for my needs last time I tried it)

It builds in Windows just fine. Maybe some members who have done so can assist you. I don't even have a Windows install local... sorry! :p

From the debug output, you're running just a little under 1/3 normal speed, correct?
IIRC optimistically it ran ~30Mhz on console, closer to 20Mhz at spots like the balloons at the start of a course and when it loads a bunch of stuff as you round a curve.

Incidentally, Mario Kart 64 is a higher-demand title on top of being questionably emulated elsewhere, plus it's high profile. Kudos on a very good test choice ;*)

People keep asking me this... it _totally_ depends on the machine... I can just about maintain 40VI/s on my desktop.

EDIT: Video attached.

 
Last edited:

Nintendo Maniac

New member
That's on your 2600k, right?

Also, you wouldn't happen to still have the video file for Mario Kart 64 from before uploading, would you? I want to try something involving upscaling, but I need the highest quality source, and is in fact the only reason I wanted to try running CEN64 myself.
 
Last edited:

Durza007

New member
It builds in Windows just fine. Maybe some members who have done so can assist you. I don't even have a Windows install local... sorry! :p
That's on your 2600k, right?

Also, you wouldn't happen to still have the video file for Mario Kart 64 from before uploading, would you? I want to try something involving upscaling, but I need the highest quality source, and is in fact the only reason I wanted to try running CEN64 myself.

I've attached a windows build of cen64 with this post :)

Also, nice work MarathonMan! I didn't expect we would have running commercial games this fast.
 

Attachments

  • cen64.exe
    5.4 MB · Views: 132
OP
MarathonMan

MarathonMan

Emulator Developer
SSE2 only apparently. That was the default setting in the Makefile.

That's actually a bit of a misnomer right now; it's SSE2 + SSSE3 shuffling. I should fix that. :p

EDIT: Christ, the Windows binary is 5.5MB? The Linux one is merely 250K.. wow.
 
Last edited:

gokuss4

Meh...
MM, this is awesome! I'm always amazed at the progress of your emulator everytime I open this topic! I can't wait to get off work and try it out at home! :)

I do have some questions regarding overall graphics since I can't see for myself right now (youtube isn't accessible at my work). First: Texture alignment, this has always been at best a tolerable thing for me to ignore, but does annoy me every once in a while. Is that part more accurate than other emulators? If not, then does it have to do with scaling? I figured it'd be something like a texture getting rendered at some decimal pixel value (which wouldn't make sense of course) but either rounded, or the decimal being cut off due to integer precision? I don't know too much when it comes to graphic programming so, yeah. Maybe someone can explain the technical side of things with scaling, or why texture alignment seems so off most of the time in N64 emulation?

2nd thing is... is the N64's native "video mode" progressive, or interlaced? I think all N64 graphics plugins display progressive, but from learning more about PS2 emulation as of late, I've lately been wondering if N64 games were programmed for progressive display, or interlace display. If interlace is the native, would it be possible to have that as an option for display resolution?

I know my questions aren't priority right now, but I was wondering if someone could help satisfy my curiosity on these subjects.
 
Last edited:
F

Fanatic 64

Guest
If I remember correctly, the Nintendo 64 always generates full (progressive) frames which are then passed to the output chip which converts them to an analog NTSC/PAL signal (interlaced).

To display interlaced output from the emulator, you would need a CRT monitor.

Also, I don't know if it's worth mentioning, but my antivirus detects the attached build of CEN64 as malware and deletes the download. Not sure why that happens...
 

Nintendo Maniac

New member
Most N64 games output at 240p, it's only the "high res" mode that was used in a few games that outputs in 480i.

Anyway, trying out the Windows version that was compiled above, I haven't a clue on how to get it started. I did a "cen64 /?" but I've no clue what "pifrom" means and what "cart" refers to.
 
Last edited:

GPDP

New member
"pifrom" is the BIOS dump. Cart is the game ROM. I believe you have to point to both of those in the command line. Obviously, you'll have to get both of those yourself.

Still, even after trying this, it would not load for me.
 

Top