Live data from Hacker News

NES Emulator on the UEFI Shell Running Super Mario Bros [video]

youtube.com

1–10 of 25 posts

Re: NES Emulator on the UEFI Shell Running Super Mario Bros [video]

#2
The dev said in one of the comments to the video:

I used EDK II framework. About the keyboard input, Program reads the value from 0x60 port directly because of multi-key input processing. I measure the timer count twice(for 1sec) by using the rdtsc instruction to make game delay more accurate. I didn't implement the audio output.

One can read in the video that it's a port of MoarNES: https://moarnes.sourceforge.io/ (0.13.8.21 alpha).

You might also be interested in:

-- CHIP-8 Emulator for UEFI: https://github.com/Openwide-Ingenierie/CHIP-8-UEFI

-- Implementing UEFI Boot to Zork: https://mjg59.dreamwidth.org/27881.html

-- Flappy Bird UEFI (there's also a video of a Street Fighter 2-like game demo there): https://github.com/hymen81/UEFI-Game-FlappyBirdy

-- Firmware Security blog UEFI games posts: https://firmwaresecurity.com/tag/game/

Re: NES Emulator on the UEFI Shell Running Super Mario Bros [video]

#3

The dev said in one of the comments to the video: I used EDK II framework. About the keyboard input, Program reads the value from 0x60 port directly because of multi-key input processing. I measure the timer count twice(for 1sec) by using the rdtsc instruction to make game delay more accurate. I didn't implement the audio output. One can read in the video that it's a port of MoarNES: https://moarnes.sourceforge.io/ (…

the above is quoted from the reddit thread: https://old.reddit.com/r/programming/comments/8vvzjr/nes_emu...

Re: NES Emulator on the UEFI Shell Running Super Mario Bros [video]

#4
post #3

The dev said in one of the comments to the video: I used EDK II framework. About the keyboard input, Program reads the value from 0x60 port directly because of multi-key input processing. I measure the timer count twice(for 1sec) by using the rdtsc instruction to make game delay more accurate. I didn't implement the audio output. One can read in the video that it's a port of MoarNES: https://moarnes.sourceforge.io/ (…

the above is quoted from the reddit thread: https://old.reddit.com/r/programming/comments/8vvzjr/nes_emu...

Yup, I'm the OP there. :)

Re: NES Emulator on the UEFI Shell Running Super Mario Bros [video]

#5
post #3

The dev said in one of the comments to the video: I used EDK II framework. About the keyboard input, Program reads the value from 0x60 port directly because of multi-key input processing. I measure the timer count twice(for 1sec) by using the rdtsc instruction to make game delay more accurate. I didn't implement the audio output. One can read in the video that it's a port of MoarNES: https://moarnes.sourceforge.io/ (…

the above is quoted from the reddit thread: https://old.reddit.com/r/programming/comments/8vvzjr/nes_emu...

>Can we make it so that you pick an OS to boot based on which pipe Mario goes down?

This would be awesome.

Re: NES Emulator on the UEFI Shell Running Super Mario Bros [video]

#9
post #8
post #7

While it is an impressive feat, it should give pause to thought about how complicated the modern "BIOS" has become...

I don't know about that, I think targeting a legacy non-UEFI BIOS for this application wouldn't be a lot more work?

that's the point.

Re: NES Emulator on the UEFI Shell Running Super Mario Bros [video]

#10
post #9
post #8

Earlier quoted context omitted.

I don't know about that, I think targeting a legacy non-UEFI BIOS for this application wouldn't be a lot more work?

that's the point.

I thought it was the opposite of the point, that modern BIOSes had evolved to make this possible, but I think a non-modern legacy BIOS would work just as well. :)
Post reply on HN