Skip to content
/ xemu Public
forked from lgblgblgb/xemu

Somewhat lame emulation (running on Linux/Unix/Windows/OSX, utilizing SDL2) of some - mainly - 8 bit machines, including the Commodore LCD, Commodore 65, and the Mega-65 (work-in-progress)

License

Notifications You must be signed in to change notification settings

bluewaysw/xemu

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

X-Emulators ~ "Xemu"

Build Status Gitter Download

Emulators running on Linux/Unix/Windows/OSX of various (mainly 8 bit) machines, including the Commodore LCD and Commodore 65 (and also some Mega65) as well.

Written by (C)2016-2019 LGB (Gábor Lénárt) [email protected] Source repository: https://github.com/lgblgblgb/xemu

Xemu also contains code wasn't written by me. Please read this page to get to know more, also with my greeings for any kind of help from others: https://github.com/lgblgblgb/xemu/wiki/Copyright

Xemu is licensed under the terms of GNU/GPL v2, for more information please read file LICENSE. You can find the source on github, see above.

Note: there is nothing too much common in these machines. The only reason that I emulate these within a single project, that I can easily re-use some of the components needed, that's all! Also, the list of emulated machines is simply the preference of myself, what I would like to emulate, nothing special about my selection.

This file is only some place holder :) For some sane documentation, please visit the wiki section of the project, here:

https://github.com/lgblgblgb/xemu/wiki

Most quick start (Xemu running in your web browser!)

Just visit this page, and use the "in-browser demonstration" link:

http://xemu-dist.lgb.hu/

Nore: this kind of demonstration is limited, often not in pair with the native client for your OS (a "binary"), which - at the other hand - requires more work: installation, configuration, etc ...

Quick start (using pre-built binaries)

I'm trying to provide some sane ways to install/use Xemu for people don't like to compile from source. Visit this page:

http://xemu-dist.lgb.hu/

You can find 32 and 64 bit windows based installers for Windows. No need to say, highly experimental (as I am not a windows user at all ...). You can find some DEB package as well.

Also, you can find ZIP archives on that page, contains only the executable files and the needed DLL, without any installer.

On Linux, you can try the provided DEB pacakge to install, if you run Ubuntu (may work on other DEB based distriutions as well). There is an RPM package provided too, however that is simply a converted version of the DEB pakcage (with "alien") so it may or may not work for you.

Where is the MacOS binary build?

Sorry, there is no MacOS build this time, since I don't find any sane way to compile for MacOS legally without buying a Mac. That's a kind of lame from Apple btw, since I want to help Apple users to have more software, but I can't accept that I am forced to buy something to be able to do so (for Windows, I can use mingw cross-compiler from Linux - basically without any material from Microsoft I had to buy and/or use, there is no such a way for MacOS, or even if there is, it needs X-code components, etc, so it cannot be totally free / legal ...).

Also I have no idea how installers work on MacOS, how to create one, etc ... One thing is clear: Xemu should work on Xemu, if you compile it yourself.

Surely, if you have any suggestions, feel free to contact me, I've never even used MacOS.

Quick start (from source)

For more information: https://github.com/lgblgblgb/xemu/wiki/Source

Install software for compilation

Example for Ubuntu Linux

sudo apt update
sudo apt install git build-essential libsdl2-dev libgtk-3-dev libreadline-dev

Example for MacOS

Assuming development Apple development components and homebrew is already installed on your Mac: https://brew.sh/

brew update
brew install sdl2 wget git

Clone source respository

git clone https://github.com/lgblgblgb/xemu.git
cd xemu

Download needed ROM images, etc

make roms

Compilation

make

Optionally, to create binary DEBian .deb package for Ubuntu/Debian Linux, result will be built in build/bin (which can be installed with dpkg -i, followed by a sudo xemu-download-data which will download the data files as well, you can then execute emulators like xemu-xmega65):

make deb

To compile only (make in the top level directory will compile all of the targets automatically) a given emulator (let's say mega65):

cd targets
ls -l
cd mega65
make
cd ../..

Here, command ls -l is only for get a list of available targets (ie. the emulators included in the Xemu project).

Note: in case of MacOS, you may get tons of warning of invalid options during the compilation. This is harmless, and it's the sign of using CLANG for real with the command name gcc. To avoid them, instead of using plain make, use this: make ARCH=osx.

Run the binary

ls -l build/bin/

to get a list of compiled binaries, like xmega65.native or xc65.native

Run one of them, like (the Commodore LCD emulator in this case):

build/bin/xclcd.native

Windows

For building binary (exe) for Windows, you still need a UNIX-like environment (in theory WSL - Windows Subsystem for Linux - should be enough) for the compilation, with cross-compiler and SDL2 MinGW cross platform suite installed. Then you can say the following for 32 bit or 64 bit build process (in general, 32 bit version should be avoided on any OS - for performance reasons as well):

make ARCH=win32
make ARCH=win64

In build/bin you'll find files like *.win32 and *.win64, they are exe files for real, you can rename and copy them to a Windows box to be able to run them using Windows only (you also need the specific SDL2.dll though).

About

Somewhat lame emulation (running on Linux/Unix/Windows/OSX, utilizing SDL2) of some - mainly - 8 bit machines, including the Commodore LCD, Commodore 65, and the Mega-65 (work-in-progress)

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C 94.8%
  • HTML 1.8%
  • Makefile 1.2%
  • Assembly 0.8%
  • JavaScript 0.6%
  • Shell 0.5%
  • Other 0.3%