billzajac / ti99sim Goto Github PK
View Code? Open in Web Editor NEWTexas Instruments 99 Home Computer Emulator
Texas Instruments 99 Home Computer Emulator
When trying to create the TI-994A cardtrige, following error is give:
sudo convert-ctg ~/Downloads/ti99emulator/ti99sim/roms/TI-994A.dat
Listing/.bin to TI-99/Sim .ctg file converter
Reading ROM 0 bank 0: 0000
.../ti99emulator/ti99sim/roms/TI-994A.dat:82: Unexpected end of file
After making sure to have the prerequisites installed, it appears to fail with an error related to the std parameter in the rules.mak file.
miles@unicron:~/1tb/ROMS/TI994A/emulators/ti99sim-0.16.0$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 18.04.5 LTS
Release: 18.04
Codename: bionic
miles@unicron:~/1tb/ROMS/TI994A/emulators/ti99sim-0.16.0$ ls -la
total 52
drwxr-xr-x 8 miles miles 4096 Nov 29 06:25 .
drwxrwxr-x 4 miles miles 4096 Nov 29 06:21 ..
drwxrwxr-x 2 miles miles 4096 Nov 29 06:25 bin
drwxr-xr-x 2 miles miles 4096 May 25 2020 doc
drwxr-xr-x 2 miles miles 4096 May 25 2020 include
-rw-r--r-- 1 miles miles 212 May 25 2020 Makefile
-rw-r--r-- 1 miles miles 1951 May 25 2020 Makefile.linux
-rw-r--r-- 1 miles miles 1623 May 25 2020 Makefile.macosx
-rw-r--r-- 1 miles miles 780 May 25 2020 Makefile.win32
drwxr-xr-x 2 miles miles 4096 May 25 2020 roms
-rw-r--r-- 1 miles miles 2042 May 25 2020 rules.mak
drwxr-xr-x 2 miles miles 4096 May 25 2020 scripts
drwxr-xr-x 6 miles miles 4096 May 25 2020 src
miles@unicron:~/1tb/ROMS/TI994A/emulators/ti99sim-0.16.0$ make
cBaseObject.cpp
g++: error: unrecognized command line option ‘--std=c++2a’; did you mean ‘--std=c++03’?
../../rules.mak:105: recipe for target 'Release/cBaseObject.o' failed
make[1]: *** [Release/cBaseObject.o] Error 1
gpl.cpp
g++: error: unrecognized command line option ‘--std=c++2a’; did you mean ‘--std=c++03’?
../../rules.mak:105: recipe for target 'Release/gpl.o' failed
make[1]: *** [Release/gpl.o] Error 1
main.cpp
/bin/sh: 1: sdl2-config: not found
g++: error: unrecognized command line option ‘--std=c++2a’; did you mean ‘--std=c++03’?
../../rules.mak:105: recipe for target 'Release/main.o' failed
make[1]: *** [Release/main.o] Error 1
catalog.cpp
/bin/sh: 1: sdl2-config: not found
g++: error: unrecognized command line option ‘--std=c++2a’; did you mean ‘--std=c++03’?
../../rules.mak:105: recipe for target 'Release/catalog.o' failed
make[1]: *** [Release/catalog.o] Error 1
Makefile.linux:85: recipe for target 'ti99sim' failed
make: *** [ti99sim] Error 2
miles@unicron:~/1tb/ROMS/TI994A/emulators/ti99sim-0.16.0$
If I attempt to change this parameter, as suggested by the error messages, I get more errors...
miles@unicron:~/1tb/ROMS/TI994A/emulators/ti99sim-0.16.0$ vi rules.mak
miles@unicron:~/1tb/ROMS/TI994A/emulators/ti99sim-0.16.0$ head -n 19 rules.mak | tail -n 1
CFLAGS += --std=c++03
miles@unicron:~/1tb/ROMS/TI994A/emulators/ti99sim-0.16.0$ make
cBaseObject.cpp
In file included from cBaseObject.cpp:23:0:
../../include/iBaseObject.hpp:23:2: warning: identifier ‘nullptr’ is a keyword in C++11 [-Wc++11-compat]
virtual size_t AddRef( iBaseObject *owner = nullptr ) = 0;
^~~~~~~
In file included from /usr/include/c++/7/atomic:38:0,
from ../../include/cBaseObject.hpp:20,
from cBaseObject.cpp:24:
/usr/include/c++/7/bits/c++0x_warning.h:32:2: error: #error This file requires compiler and library support for the ISO C++ 2011 standard. This support must be enabled with the -std=c++11 or -std=gnu++11 compiler options.
#error This file requires compiler and library support \
^~~~~
In file included from cBaseObject.cpp:21:0:
../../include/common.hpp:246:7: error: ‘unique_ptr’ in namespace ‘std’ does not name a template type
std::unique_ptr<FILE, void(*)(FILE*)> file;
^~~~~~~~~~
../../include/common.hpp: In constructor ‘FILEP::FILEP(FILE*)’:
../../include/common.hpp:248:21: error: class ‘FILEP’ does not have any field named ‘file’
FILEP( FILE *f ) : file( f, FileCloser ) { }
^~~~
../../include/common.hpp: In member function ‘FILEP::operator FILE*() const’:
../../include/common.hpp:250:40: error: ‘file’ was not declared in this scope
operator FILE*( ) const { return file.get( ); }
^~~~
../../include/common.hpp:250:40: note: suggested alternative: ‘fileno’
operator FILE*( ) const { return file.get( ); }
^~~~
fileno
In file included from cBaseObject.cpp:23:0:
../../include/iBaseObject.hpp: At global scope:
../../include/iBaseObject.hpp:28:19: warning: defaulted and deleted functions only available with -std=c++11 or -std=gnu++11
iBaseObject( ) = default;
^~~~~~~
../../include/iBaseObject.hpp:29:39: warning: defaulted and deleted functions only available with -std=c++11 or -std=gnu++11
iBaseObject( const iBaseObject & ) = delete;
^~~~~~
../../include/iBaseObject.hpp:30:51: warning: defaulted and deleted functions only available with -std=c++11 or -std=gnu++11
iBaseObject &operator =( const iBaseObject & ) = delete;
^~~~~~
../../include/iBaseObject.hpp:32:28: warning: defaulted and deleted functions only available with -std=c++11 or -std=gnu++11
virtual ~iBaseObject( ) = default;
^~~~~~~
../../include/iBaseObject.hpp:23:46: error: ‘nullptr’ was not declared in this scope
virtual size_t AddRef( iBaseObject *owner = nullptr ) = 0;
^~~~~~~
../../include/iBaseObject.hpp:24:47: error: ‘nullptr’ was not declared in this scope
virtual size_t Release( iBaseObject *owner = nullptr ) = 0;
^~~~~~~
../../include/iBaseObject.hpp:48:19: error: expected ‘,’ or ‘...’ before ‘&&’ token
cRefPtr( cRefPtr &&ptr ) :
^~
../../include/iBaseObject.hpp:48:25: error: invalid constructor; you probably meant ‘cRefPtr<Type> (const cRefPtr<Type>&)’
cRefPtr( cRefPtr &&ptr ) :
^
../../include/iBaseObject.hpp:81:31: error: expected ‘,’ or ‘...’ before ‘&&’ token
cRefPtr &operator =( cRefPtr &&rhs )
^~
../../include/iBaseObject.hpp: In constructor ‘cRefPtr<Type>::cRefPtr()’:
../../include/iBaseObject.hpp:44:14: error: ‘nullptr’ was not declared in this scope
m_pObject( nullptr )
^~~~~~~
../../include/iBaseObject.hpp: In destructor ‘cRefPtr<Type>::~cRefPtr()’:
../../include/iBaseObject.hpp:77:16: error: ‘nullptr’ was not declared in this scope
m_pObject = nullptr;
^~~~~~~
../../include/iBaseObject.hpp: In member function ‘cRefPtr<Type>& cRefPtr<Type>::operator=(cRefPtr<Type>)’:
../../include/iBaseObject.hpp:88:15: error: ‘rhs’ was not declared in this scope
m_pObject = rhs.m_pObject;
^~~
../../include/iBaseObject.hpp:89:19: error: ‘nullptr’ was not declared in this scope
rhs.m_pObject = nullptr;
^~~~~~~
In file included from cBaseObject.cpp:24:0:
../../include/cBaseObject.hpp: At global scope:
../../include/cBaseObject.hpp:64:7: error: ‘atomic’ in namespace ‘std’ does not name a template type
std::atomic<size_t> m_RefCount; // # of references on this object
^~~~~~
../../include/cBaseObject.hpp:69:39: warning: defaulted and deleted functions only available with -std=c++11 or -std=gnu++11
cBaseObject( const cBaseObject & ) = delete; // no implementation
^~~~~~
../../include/cBaseObject.hpp:70:51: warning: defaulted and deleted functions only available with -std=c++11 or -std=gnu++11
cBaseObject &operator =( const cBaseObject & ) = delete; // no implementation
^~~~~~
../../include/cBaseObject.hpp:75:19: warning: defaulted and deleted functions only available with -std=c++11 or -std=gnu++11
cBaseObject( ) = default;
^~~~~~~
../../include/cBaseObject.hpp:77:24: warning: override controls (override/final) only available with -std=c++11 or -std=gnu++11
virtual ~cBaseObject( ) override;
^
../../include/cBaseObject.hpp:82:62: warning: override controls (override/final) only available with -std=c++11 or -std=gnu++11
virtual const void *GetInterface( const std::string &name ) const override;
^~~~~
../../include/cBaseObject.hpp:83:54: warning: override controls (override/final) only available with -std=c++11 or -std=gnu++11
virtual void *GetInterface( const std::string &name ) override;
^
../../include/cBaseObject.hpp:84:49: warning: override controls (override/final) only available with -std=c++11 or -std=gnu++11
virtual size_t AddRef( iBaseObject * = nullptr ) override;
^
../../include/cBaseObject.hpp:85:50: warning: override controls (override/final) only available with -std=c++11 or -std=gnu++11
virtual size_t Release( iBaseObject * = nullptr ) override;
^
../../include/cBaseObject.hpp:77:10: error: looser throw specifier for ‘virtual cBaseObject::~cBaseObject()’
virtual ~cBaseObject( ) override;
^
In file included from cBaseObject.cpp:23:0:
../../include/iBaseObject.hpp:32:10: error: overriding ‘virtual iBaseObject::~iBaseObject() throw ()’
virtual ~iBaseObject( ) = default;
^
In file included from cBaseObject.cpp:24:0:
../../include/cBaseObject.hpp:84:41: error: ‘nullptr’ was not declared in this scope
virtual size_t AddRef( iBaseObject * = nullptr ) override;
^~~~~~~
../../include/cBaseObject.hpp:85:42: error: ‘nullptr’ was not declared in this scope
virtual size_t Release( iBaseObject * = nullptr ) override;
^~~~~~~
cBaseObject.cpp: In constructor ‘cBaseObject::cBaseObject(const char*)’:
cBaseObject.cpp:59:2: error: class ‘cBaseObject’ does not have any field named m_RefCount’
m_RefCount( 0 )
^~~~~~~~~~
cBaseObject.cpp: In destructor ‘virtual cBaseObject::~cBaseObject()’:
cBaseObject.cpp:104:2: error: ‘m_RefCount’ was not declared in this scope
m_RefCount = 0;
^~~~~~~~~~
cBaseObject.cpp: In member function ‘virtual const void* cBaseObject::GetInterface(const string&) const’:
cBaseObject.cpp:236:9: error: ‘nullptr’ was not declared in this scope
return nullptr;
^~~~~~~
cBaseObject.cpp: In member function ‘virtual size_t cBaseObject::AddRef(iBaseObject*)’:
cBaseObject.cpp:274:11: error: ‘m_RefCount’ was not declared in this scope
return ++m_RefCount;
^~~~~~~~~~
cBaseObject.cpp: In member function ‘virtual size_t cBaseObject::Release(iBaseObject*)’:
cBaseObject.cpp:306:19: error: ‘m_RefCount’ was not declared in this scope
size_t count = --m_RefCount;
^~~~~~~~~~
../../rules.mak:105: recipe for target 'Release/cBaseObject.o' failed
make[1]: *** [Release/cBaseObject.o] Error 1
gpl.cpp
gpl.cpp:172:2: warning: identifier ‘nullptr’ is a keyword in C++11 [-Wc++11-compat]
{ "UNKN ", 0x00, 0xFF, -1, nullptr }
^
In file included from gpl.cpp:31:0:
../../include/common.hpp:246:7: error: ‘unique_ptr’ in namespace ‘std’ does not name a template type
std::unique_ptr<FILE, void(*)(FILE*)> file;
^~~~~~~~~~
../../include/common.hpp: In constructor ‘FILEP::FILEP(FILE*)’:
../../include/common.hpp:248:21: error: class ‘FILEP’ does not have any field named ‘file’
FILEP( FILE *f ) : file( f, FileCloser ) { }
^~~~
../../include/common.hpp: In member function ‘FILEP::operator FILE*() const’:
../../include/common.hpp:250:40: error: ‘file’ was not declared in this scope
operator FILE*( ) const { return file.get( ); }
^~~~
../../include/common.hpp:250:40: note: suggested alternative: ‘fileno’
operator FILE*( ) const { return file.get( ); }
^~~~
fileno
gpl.cpp: At global scope:
gpl.cpp:172:29: error: ‘nullptr’ was not declared in this scope
{ "UNKN ", 0x00, 0xFF, -1, nullptr }
^~~~~~~
../../rules.mak:105: recipe for target 'Release/gpl.o' failed
make[1]: *** [Release/gpl.o] Error 1
main.cpp
/bin/sh: 1: sdl2-config: not found
main.cpp:31:10: fatal error: SDL.h: No such file or directory
#include <SDL.h>
^~~~~~~
compilation terminated.
../../rules.mak:105: recipe for target 'Release/main.o' failed
make[1]: *** [Release/main.o] Error 1
catalog.cpp
/bin/sh: 1: sdl2-config: not found
In file included from ../../include/cBaseObject.hpp:18:0,
from ../../include/cartridge.hpp:32,
from catalog.cpp:34:
../../include/iBaseObject.hpp:23:2: warning: identifier ‘nullptr’ is a keyword in C++11 [-Wc++11-compat]
virtual size_t AddRef( iBaseObject *owner = nullptr ) = 0;
^~~~~~~
In file included from /usr/include/c++/7/atomic:38:0,
from ../../include/cBaseObject.hpp:20,
from ../../include/cartridge.hpp:32,
from catalog.cpp:34:
/usr/include/c++/7/bits/c++0x_warning.h:32:2: error: #error This file requires compiler and library support for the ISO C++ 2011 standard. This support must be enabled with the -std=c++11 or -std=gnu++11 compiler options.
#error This file requires compiler and library support \
^~~~~
In file included from ../../include/cartridge.hpp:33:0,
from catalog.cpp:34:
../../include/istateobject.hpp:34:10: fatal error: filesystem: No such file or directory
#include <filesystem>
^~~~~~~~~~~~
compilation terminated.
../../rules.mak:105: recipe for target 'Release/catalog.o' failed
make[1]: *** [Release/catalog.o] Error 1
Makefile.linux:85: recipe for target 'ti99sim' failed
make: *** [ti99sim] Error 2
Hi I realize this is an old project but I liked the concept so I decided to give it a try.
Now.. I ran in to the same issue as the previous person with running "make install" fixed it by adding /Release after /src in $TARGET.
What I'm having trouble with is that I just get a black screen and nothing, no beeps, no errors, nothing.. nada...
I've tried at least two versions of the 994arom.bin and 994agrom.bin and convert-ctg.. you know everything the readme said. I can't seem to get any life into this thing. Any thoughts?
32-bit laptop running:
Debian based distro
recent 4.19+ kernel
sdl1.2.15-dev
GCC 6.3.0.18
Hi, wanted to play with the emulator. make ran successfully, but got this error on make install. Using ubuntu 14:
sudo make install
make[1]: Entering directory /home/brent/github-stuff/ti99sim/src/core' make[1]: Nothing to be done for
all'.
make[1]: Leaving directory /home/brent/github-stuff/ti99sim/src/core' make[1]: Entering directory
/home/brent/github-stuff/ti99sim/src/console'
make[1]: Nothing to be done for all'. make[1]: Leaving directory
/home/brent/github-stuff/ti99sim/src/console'
make[1]: Entering directory /home/brent/github-stuff/ti99sim/src/sdl' make[1]: Nothing to be done for
all'.
make[1]: Leaving directory /home/brent/github-stuff/ti99sim/src/sdl' make[1]: Entering directory
/home/brent/github-stuff/ti99sim/src/util'
make[1]: Nothing to be done for all'. make[1]: Leaving directory
/home/brent/github-stuff/ti99sim/src/util'
/usr/bin/install: cannot stat ‘src/sdl/ti99sim-sdl’: No such file or directory
/usr/bin/install: cannot stat ‘src/util/convert-ctg’: No such file or directory
/usr/bin/install: cannot stat ‘src/util/decode’: No such file or directory
/usr/bin/install: cannot stat ‘src/util/disk’: No such file or directory
/usr/bin/install: cannot stat ‘src/util/dumpcpu’: No such file or directory
/usr/bin/install: cannot stat ‘src/util/dumpgrom’: No such file or directory
/usr/bin/install: cannot stat ‘src/util/dumpspch’: No such file or directory
/usr/bin/install: cannot stat ‘src/util/list’: No such file or directory
/usr/bin/install: cannot stat ‘src/util/mkspch’: No such file or directory
/usr/bin/install: cannot stat ‘src/util/say’: No such file or directory
/usr/bin/install: cannot stat ‘src/console/ti99sim-console’: No such file or directory
make: *** [install] Error 1
brent@tableflipper:~/github-stuff/ti99sim$
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.