Previous - NeXT computer emulator

Previous is a NEXT emulator

testing on Debian,

back to emulators page.

History

2021-11-15: I re-created this page on my self-hosted web server.

2017-06-30: build - does it build now?

[tingo@kg-elitebook previous-code]$ mkdir build
[tingo@kg-elitebook previous-code]$ cd build

cmake

[tingo@kg-elitebook build]$ cmake ..
-- The C compiler identification is GNU 6.3.1
-- The CXX compiler identification is GNU 6.3.1
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Looking for pthread.h
-- Looking for pthread.h - found
-- Looking for pthread_create
-- Looking for pthread_create - not found
-- Looking for pthread_create in pthreads
-- Looking for pthread_create in pthreads - not found
-- Looking for pthread_create in pthread
-- Looking for pthread_create in pthread - found
-- Found Threads: TRUE 
-- Found SDL2: /usr/lib64/libSDL2.so;-lpthread 
-- Found MATH: /usr/lib64/libm.so 
-- Found READLINE: /usr/lib64/libreadline.so 
-- Looking for rl_filename_completion_function
-- Looking for rl_filename_completion_function - found
-- Found ZLIB: /usr/lib64/libz.so (found version "1.2.8")
-- Found PNG: /usr/lib64/libpng.so (found version "1.6.27")
-- Looking for XOpenDisplay in /usr/lib64/libX11.so;/usr/lib64/libXext.so
-- Looking for XOpenDisplay in /usr/lib64/libX11.so;/usr/lib64/libXext.so - found
-- Looking for gethostbyname
-- Looking for gethostbyname - found
-- Looking for connect
-- Looking for connect - found
-- Looking for remove
-- Looking for remove - found
-- Looking for shmat
-- Looking for shmat - found
-- Found X11: /usr/lib64/libX11.so
-- Looking for include file termios.h
-- Looking for include file termios.h - found
-- Looking for include file strings.h
-- Looking for include file strings.h - found
-- Looking for include file malloc.h
-- Looking for include file malloc.h - found
-- Looking for include file sys/times.h
-- Looking for include file sys/times.h - found
-- Looking for include files sys/socket.h, sys/un.h
-- Looking for include files sys/socket.h, sys/un.h - found
-- Looking for include file SDL2/SDL_config.h
-- Looking for include file SDL2/SDL_config.h - found
-- Looking for cfmakeraw
-- Looking for cfmakeraw - found
-- Looking for setenv
-- Looking for setenv - found
-- Looking for select
-- Looking for select - found
-- Looking for posix_memalign
-- Looking for posix_memalign - found
-- Looking for memalign
-- Looking for memalign - found
-- Looking for gettimeofday
-- Looking for gettimeofday - found
-- Looking for nanosleep
-- Looking for nanosleep - found
-- Looking for alphasort
-- Looking for alphasort - found
-- Looking for scandir
-- Looking for scandir - found
-- Looking for strdup
-- Looking for strdup - found
-- Looking for include file sys/filio.h
-- Looking for include file sys/filio.h - not found
-- Looking for include file sys/ioctl.h
-- Looking for include file sys/ioctl.h - found
-- Looking for include file unistd.h
-- Looking for include file unistd.h - found
-- Found PythonInterp: /usr/bin/python (found version "2.7.13")
-- Configuring done
-- Generating done
-- Build files have been written to: /zs/tingo/work/previous/test/previous-code/build

make

[...]
[ 99%] Linking CXX executable Previous
[ 99%] Built target Previous
Scanning dependencies of target hatariui_man
[100%] Generating hatariui.1.gz
[100%] Built target hatariui_man

yes it did.

2017-06-30: patch CMakeLists.txt. before

[tingo@kg-elitebook previous-code]$ grep STRDUP CMakeLists.txt

after

[tingo@kg-elitebook previous-code]$ grep STRDUP CMakeLists.txt
check_function_exists(strdup HAVE_STRDUP)

ok.

2017-06-30: source - fetch the source

[tingo@kg-elitebook test]$ svn checkout svn://svn.code.sf.net/p/previous/code/branches/branch_realtime previous-code
[...]
 U   previous-code
Checked out revision 826.

ok.

2017-06-30: make a fresh checkout to test if patching it works

[tingo@kg-elitebook previous]$ mkdir test
[tingo@kg-elitebook previous]$ cd test
[tingo@kg-elitebook test]$ pwd
/zs/tingo/work/previous/test

ok.

2017-06-29: build

[tingo@kg-elitebook build]$ make
Scanning dependencies of target Slirp
[  1%] Building C object src/slirp/CMakeFiles/Slirp.dir/bootp.c.o
In file included from /usr/include/string.h:630:0,
                 from /usr/include/sys/un.h:37,
                 from /zs/tingo/work/previous/previous-code/src/slirp/slirp.h:162,
                 from /zs/tingo/work/previous/previous-code/src/slirp/bootp.c:24:
/zs/tingo/work/previous/previous-code/src/slirp/misc.h:27:7: error: expected identifier or ( before ‘__extension__’
 char *strdup(const char *);
       ^
src/slirp/CMakeFiles/Slirp.dir/build.make:62: recipe for target 'src/slirp/CMakeFiles/Slirp.dir/bootp.c.o' failed
make[2]: *** [src/slirp/CMakeFiles/Slirp.dir/bootp.c.o] Error 1
CMakeFiles/Makefile2:607: recipe for target 'src/slirp/CMakeFiles/Slirp.dir/all' failed
make[1]: *** [src/slirp/CMakeFiles/Slirp.dir/all] Error 2
Makefile:129: recipe for target 'all' failed
make: *** [all] Error 2
[tingo@kg-elitebook build]$ l src/slirp
./  ../  CMakeFiles/  cmake_install.cmake  Makefile
[tingo@kg-elitebook build]$ l src/slirp/CMakeFiles/
./  ../  CMakeDirectoryInformation.cmake  progress.marks  Slirp.dir/
[tingo@kg-elitebook build]$ l src/slirp/CMakeFiles/Slirp.dir/
./   build.make      cmake_clean.cmake           DependInfo.cmake  depend.make  link.txt
../  C.includecache  cmake_clean_target.cmake  depend.internal     flags.make   progress.make

it fails.

2017-06-29: cmake

[tingo@kg-elitebook build]$ cmake ..
-- The C compiler identification is GNU 6.3.1
-- The CXX compiler identification is GNU 6.3.1
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Looking for pthread.h
-- Looking for pthread.h - found
-- Looking for pthread_create
-- Looking for pthread_create - not found
-- Looking for pthread_create in pthreads
-- Looking for pthread_create in pthreads - not found
-- Looking for pthread_create in pthread
-- Looking for pthread_create in pthread - found
-- Found Threads: TRUE 
-- Found SDL2: /usr/lib64/libSDL2.so;-lpthread 
-- Found MATH: /usr/lib64/libm.so 
-- Found READLINE: /usr/lib64/libreadline.so 
-- Looking for rl_filename_completion_function
-- Looking for rl_filename_completion_function - found
-- Found ZLIB: /usr/lib64/libz.so (found version "1.2.8")
-- Found PNG: /usr/lib64/libpng.so (found version "1.6.27")
-- Looking for XOpenDisplay in /usr/lib64/libX11.so;/usr/lib64/libXext.so
-- Looking for XOpenDisplay in /usr/lib64/libX11.so;/usr/lib64/libXext.so - found
-- Looking for gethostbyname
-- Looking for gethostbyname - found
-- Looking for connect
-- Looking for connect - found
-- Looking for remove
-- Looking for remove - found
-- Looking for shmat
-- Looking for shmat - found
-- Found X11: /usr/lib64/libX11.so
-- Looking for include file termios.h
-- Looking for include file termios.h - found
-- Looking for include file strings.h
-- Looking for include file strings.h - found
-- Looking for include file malloc.h
-- Looking for include file malloc.h - found
-- Looking for include file sys/times.h
-- Looking for include file sys/times.h - found
-- Looking for include files sys/socket.h, sys/un.h
-- Looking for include files sys/socket.h, sys/un.h - found
-- Looking for include file SDL2/SDL_config.h
-- Looking for include file SDL2/SDL_config.h - found
-- Looking for cfmakeraw
-- Looking for cfmakeraw - found
-- Looking for setenv
-- Looking for setenv - found
-- Looking for select
-- Looking for select - found
-- Looking for posix_memalign
-- Looking for posix_memalign - found
-- Looking for memalign
-- Looking for memalign - found
-- Looking for gettimeofday
-- Looking for gettimeofday - found
-- Looking for nanosleep
-- Looking for nanosleep - found
-- Looking for alphasort
-- Looking for alphasort - found
-- Looking for scandir
-- Looking for scandir - found
-- Looking for include file sys/filio.h
-- Looking for include file sys/filio.h - not found
-- Looking for include file sys/ioctl.h
-- Looking for include file sys/ioctl.h - found
-- Looking for include file unistd.h
-- Looking for include file unistd.h - found
-- Found PythonInterp: /usr/bin/python (found version "2.7.13")
-- Configuring done
-- Generating done
-- Build files have been written to: /zs/tingo/work/previous/previous-code/build

ok.

2017-06-29: source - update to latest revision

[tingo@kg-elitebook previous-code]$ svn up
Updating '.':
At revision 825.

ok.

2017-06-21: build - try the 'configure' method

[tingo@kg-elitebook previous-code]$ ./configure
[...]
-- Build files have been written to: /zs/tingo/work/previous/previous-code

Now you must type: make; make install
to actually build and install the software

now run make

[tingo@kg-elitebook previous-code]$ make
Scanning dependencies of target Slirp
[  1%] Building C object src/slirp/CMakeFiles/Slirp.dir/bootp.c.o
In file included from /usr/include/string.h:630:0,
                 from /usr/include/sys/un.h:37,
                 from /zs/tingo/work/previous/previous-code/src/slirp/slirp.h:162,
                 from /zs/tingo/work/previous/previous-code/src/slirp/bootp.c:24:
/zs/tingo/work/previous/previous-code/src/slirp/misc.h:27:7: error: expected identifier or ( before ‘__extension__’
 char *strdup(const char *);
       ^
src/slirp/CMakeFiles/Slirp.dir/build.make:62: recipe for target 'src/slirp/CMakeFiles/Slirp.dir/bootp.c.o' failed
make[2]: *** [src/slirp/CMakeFiles/Slirp.dir/bootp.c.o] Error 1
CMakeFiles/Makefile2:607: recipe for target 'src/slirp/CMakeFiles/Slirp.dir/all' failed
make[1]: *** [src/slirp/CMakeFiles/Slirp.dir/all] Error 2
Makefile:129: recipe for target 'all' failed
make: *** [all] Error 2

which failed too.

2017-06-21: build - try to build it per instructions in the readme file

[tingo@kg-elitebook previous-code]$ mkdir -p build
[tingo@kg-elitebook previous-code]$ cd build

run 'cmake'

[tingo@kg-elitebook build]$ cmake ..
-- The C compiler identification is GNU 6.3.1
-- The CXX compiler identification is GNU 6.3.1
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Looking for pthread.h
-- Looking for pthread.h - found
-- Looking for pthread_create
-- Looking for pthread_create - not found
-- Looking for pthread_create in pthreads
-- Looking for pthread_create in pthreads - not found
-- Looking for pthread_create in pthread
-- Looking for pthread_create in pthread - found
-- Found Threads: TRUE 
-- Found SDL2: /usr/lib64/libSDL2.so;-lpthread 
-- Found MATH: /usr/lib64/libm.so 
-- Found READLINE: /usr/lib64/libreadline.so 
-- Looking for rl_filename_completion_function
-- Looking for rl_filename_completion_function - found
-- Found ZLIB: /usr/lib64/libz.so (found version "1.2.8")
-- Found PNG: /usr/lib64/libpng.so (found version "1.6.27")
-- Looking for XOpenDisplay in /usr/lib64/libX11.so;/usr/lib64/libXext.so
-- Looking for XOpenDisplay in /usr/lib64/libX11.so;/usr/lib64/libXext.so - found
-- Looking for gethostbyname
-- Looking for gethostbyname - found
-- Looking for connect
-- Looking for connect - found
-- Looking for remove
-- Looking for remove - found
-- Looking for shmat
-- Looking for shmat - found
-- Found X11: /usr/lib64/libX11.so
-- Looking for include file termios.h
-- Looking for include file termios.h - found
-- Looking for include file strings.h
-- Looking for include file strings.h - found
-- Looking for include file malloc.h
-- Looking for include file malloc.h - found
-- Looking for include file sys/times.h
-- Looking for include file sys/times.h - found
-- Looking for include files sys/socket.h, sys/un.h
-- Looking for include files sys/socket.h, sys/un.h - found
-- Looking for include file SDL2/SDL_config.h
-- Looking for include file SDL2/SDL_config.h - found
-- Looking for cfmakeraw
-- Looking for cfmakeraw - found
-- Looking for setenv
-- Looking for setenv - found
-- Looking for select
-- Looking for select - found
-- Looking for posix_memalign
-- Looking for posix_memalign - found
-- Looking for memalign
-- Looking for memalign - found
-- Looking for gettimeofday
-- Looking for gettimeofday - found
-- Looking for nanosleep
-- Looking for nanosleep - found
-- Looking for alphasort
-- Looking for alphasort - found
-- Looking for scandir
-- Looking for scandir - found
-- Looking for include file sys/filio.h
-- Looking for include file sys/filio.h - not found
-- Looking for include file sys/ioctl.h
-- Looking for include file sys/ioctl.h - found
-- Looking for include file unistd.h
-- Looking for include file unistd.h - found
-- Found PythonInterp: /usr/bin/python (found version "2.7.13")
-- Configuring done
-- Generating done
-- Build files have been written to: /zs/tingo/work/previous/previous-code/build

now run 'make'

[tingo@kg-elitebook build]$ make
Scanning dependencies of target Slirp
[  1%] Building C object src/slirp/CMakeFiles/Slirp.dir/bootp.c.o
In file included from /usr/include/string.h:630:0,
                 from /usr/include/sys/un.h:37,
                 from /zs/tingo/work/previous/previous-code/src/slirp/slirp.h:162,
                 from /zs/tingo/work/previous/previous-code/src/slirp/bootp.c:24:
/zs/tingo/work/previous/previous-code/src/slirp/misc.h:27:7: error: expected identifier or ( before __extension__
 char *strdup(const char *);
       ^
src/slirp/CMakeFiles/Slirp.dir/build.make:62: recipe for target 'src/slirp/CMakeFiles/Slirp.dir/bootp.c.o' failed
make[2]: *** [src/slirp/CMakeFiles/Slirp.dir/bootp.c.o] Error 1
CMakeFiles/Makefile2:607: recipe for target 'src/slirp/CMakeFiles/Slirp.dir/all' failed
make[1]: *** [src/slirp/CMakeFiles/Slirp.dir/all] Error 2
Makefile:129: recipe for target 'all' failed
make: *** [all] Error 2

that didn't work.

2017-06-21: pre requirements - I installed cmake, SDL2-devel (zlib-devel was already installed).

2017-06-21: get source (based on instructions from News section)

[tingo@kg-elitebook work]$ cd previous/
[tingo@kg-elitebook previous]$ svn checkout svn://svn.code.sf.net/p/previous/code/branches/branch_realtime previous-code
[...]
A    previous-code/gpl.txt
 U   previous-code
Checked out revision 823.

ok.

2017-06-21: I use med Fedora work laptop for testing:

[tingo@kg-elitebook ~]$ cat /etc/fedora-release
Fedora release 25 (Twenty Five)
[tingo@kg-elitebook ~]$ uname -a
Linux kg-elitebook.kg4.no 4.11.5-200.fc25.x86_64 #1 SMP Wed Jun 14 17:17:29 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux

ok