Skip to content

A CHIP-8 Emulator written in Python using ModernGL that truly gives that retro feel.

License

Notifications You must be signed in to change notification settings

RelativisticMechanic/gl8

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

gl8

A CHIP-8 Emulator written in Python using ModernGL that truly gives that retro feel.

Why another CHIP-8 Emulator?

It's one of the most fun things to do. Frankly, I did this in 3-4 hours as an excercise because I wanted to.

How to run?

Simply,

python ./gl8.py IBM.ch8

Or any other ROM file you'd want to run.

Controls?

1234QWERASDFZXCV map to 0x0 - 0xF keys on the CHIP-8 controller. Press ESC to quit the emulator any time.

What's so special about it?

It's in Python, it's a one file program, it uses only two libraries: pygame and moderngl. All the font data, audio data, shaders is in this one file. It's nice and compact. And unlike all other CHIP-8 emulators, this one truly captures the feel of an 8-bit system with its flashy effects like phosphor glow and monitor burn in effect.

Any issues?

Well, of course, it fails a lot of tests especially the QUIRKS and the FLAGS tests. But it runs nearly every game I've ran on it (BRIX, TETRIS, and a bunch of other demos) just fine. I don't think we have to worry much about it.

Wait, burn in? Phosphor Glow? Really?

I'll let you be the judge.

image image

About

A CHIP-8 Emulator written in Python using ModernGL that truly gives that retro feel.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages