|
|
1.1 root 1:
2:
1.1.1.2 ! root 3: Previous 1.8
1.1 root 4:
5:
6:
7: Contents:
8: ---------
9: 1. License
10: 2. About Previous
11: 3. Compiling and installing
12: 4. Known problems
13: 5. Running Previous
14: 6. Contributors
15: 7. Contact
16:
17:
18: 1) License
19: ----------
20:
21: This program is free software; you can redistribute it and/or modify it under
22: the terms of the GNU General Public License as published by the Free Soft-
23: ware Foundation; either version 2 of the License, or (at your option) any
24: later version.
25:
26: This program is distributed in the hope that it will be useful, but WITHOUT ANY
27: WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
28: FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
29:
30: You should have received a copy of the GNU General Public License along with
31: this program; if not, write to the
32: Free Software Foundation, Inc.,
33: 51 Franklin Street, Fifth Floor, Boston,
34: MA 02110-1301, USA
35:
36:
37: 2) About Previous
38: -----------------
39:
1.1.1.2 ! root 40: Previous is a NeXT Computer emulator based on the Atari emulator Hatari. It
! 41: uses the latest m68k emulation core from WinUAE and the i860 emulator from
! 42: Jason Eckhardt. Previous is confirmed to compile and run on Linux, Mac OS X
! 43: and Windows. It may also work on other Systems which are supported by the SDL2
! 44: library, like FreeBSD, NetBSD and BeOS.
1.1 root 45:
46: Previous emulates the following machines:
47: NeXT Computer (original 68030 Cube)
48: NeXTcube
49: NeXTcube Turbo
50: NeXTstation
51: NeXTstation Turbo
52: NeXTstation Color
53: NeXTstation Turbo Color
1.1.1.2 ! root 54: NeXTdimension Graphics Board
1.1 root 55:
56:
57: 3) Compiling and installing
58: ---------------------------
59:
60: For using Previous, you need to have installed the following libraries:
61:
62: Required:
1.1.1.2 ! root 63: - The SDL library v2.0.5 or later (http://www.libsdl.org)
! 64: - The libpng PNG reference library (http://www.libpng.org)
1.1 root 65: - The zlib compression library (http://www.gzip.org/zlib/)
66:
67:
68: Don't forget to also install the header files of these libraries for compiling
69: Previous (some Linux distributions use separate development packages for these
70: header files)!
71:
72: For compiling Previous, you need a C compiler (preferably GNU C), and a working
73: CMake installation (see http://www.cmake.org/ for details).
74:
75: CMake can generate makefiles for various flavors of "Make" (like GNU-Make)
76: and various IDEs like Xcode on Mac OS X. To run CMake, you've got to pass the
77: path to the sources of Previous as parameter, for example run the following if
78: you are in the topmost directory of the Previous source tree:
79: cmake .
80:
81: If you're tracking Previous version control, it's preferable to do
82: the build in a separate build directory as above would overwrite
83: the (non-CMake) Makefiles coming with Previous:
84: mkdir -p build
85: cd build
86: cmake ..
87:
88: Have a look at the manual of CMake for other options. Alternatively, you can
89: use the "cmake-gui" program to configure the sources with a graphical
90: application.
91:
92: After cmake finished the configuration successfully, you can compile Previous
93: by typing "make". If all works fine, you'll get the executable "Previous" in
94: the src/ subdirectory of the build tree.
95:
96:
97: 4) Status
98: ---------
99:
1.1.1.2 ! root 100: Previous is stable, but some parts are still work in progress. Some hardware
! 101: is not yet emulated. Status of the individual components is as follows:
! 102: CPU good (but not cycle-exact)
1.1 root 103: MMU good
104: FPU good
1.1.1.2 ! root 105: DSP good
1.1 root 106: DMA good
1.1.1.2 ! root 107: NextBus good
1.1 root 108: Memory good
109: 2-bit graphics good
110: Color graphics good
111: RTC good
1.1.1.2 ! root 112: Timers good
1.1 root 113: SCSI drive good
1.1.1.2 ! root 114: MO drive good
1.1 root 115: Floppy drive good
116: Ethernet good
117: Serial dummy
118: Printer good
1.1.1.2 ! root 119: Sound good
1.1 root 120: Keyboard good
121: Mouse good
122: ADB dummy
123: Nitro dummy
1.1.1.2 ! root 124: Dimension partial (no video I/O)
1.1 root 125:
126:
127: There are remaining problems with the host to emulated machine interface for
128: input devices.
129:
130:
131: 5) Known issues
132: ---------------
133:
1.1.1.2 ! root 134: - Un-emulated hardware may cause problems when attempted to being used.
! 135: - NeXTdimension emulation does not work on hosts with big endian byte order.
! 136: - The MO drive causes slow downs and hangs when both drives are connected, but
! 137: only one disk is inserted. This is no emulation issue but a bug in NeXTstep.
! 138: - DSP sound has timing related issues. playscore under NeXTstep 0.9 sometimes
! 139: produces bad audio in variable speed mode. ScorePlayer under NeXTstep 2.x
! 140: produces distorted sound in normal CPU mode.
! 141: - Shortcuts do not work properly or overlap with host commands on some
! 142: platforms.
! 143: - CPU timings are not correct. You may experience performance differences
! 144: compared to real hardware.
! 145: - 68882 transcendental FPU instructions produce results identical to 68040 FPSP.
! 146: The results are slightly different from real 68882 results.
! 147: - Changing network connection settings while a guest system is running sometimes
! 148: causes permanently lost connections, especially under NeXTstep 2.2.
! 149:
1.1 root 150:
151:
152: 6) Release notes
153: ----------------
154:
155: Previous v1.0:
156: > Initial release.
157:
158: Previous v1.1:
159: > Adds Turbo chipset emulation.
160: > Improves DSP interrupt handling.
161: > Improves hardclock timing.
162:
163: Previous v1.2:
164: > Adds support for running Mac OS via Daydream.
165: > Improves mouse movement handling.
166: > Adds dummy Nitro emulation.
167: > Improves dummy SCC emulation.
168:
169: Previous v1.3:
170: > Adds Laser Printer emulation.
171: > Introduces option for swapping cmd and alt key.
172:
1.1.1.2 ! root 173: Previous v1.4:
! 174: > Adds NeXTdimension emulation, including emulated i860 CPU.
! 175: > Improves timings and adds a mode for higher than real speed.
! 176: > Improves emulator efficiency through optimizations and threads.
! 177: > Improves mouse movement handling.
! 178: > Improves Real Time Clock. Time is now handled correctly.
! 179:
! 180: Previous v1.5:
! 181: > Adds emulation of soundbox microphone to enable sound recording.
! 182: > Fixes bug in SCSI code. Images greater than 4 GB are now supported.
! 183: > Fixes bug in Real Time Clock. Years after 1999 are now accepted.
! 184: > Fixes bug that prevented screen output on Linux.
! 185: > Fixes bug that caused NeXTdimension to fail after disabling thread.
! 186:
! 187: Previous v1.6:
! 188: > Adds SoftFloat FPU emulation. Fixes FPU on non-x86 host platforms.
! 189: > Adds emulation of FPU arithmetic exceptions.
! 190: > Adds support for second magneto-optical disk drive.
! 191: > Fixes bug that caused a crash when writing to an NFS server.
! 192: > Fixes bug that prevented NeXTdimension from stopping in rare cases.
! 193: > Fixes bug that caused external i860 interrupts to be delayed.
! 194: > Fixes bug that prevented sound input under NeXTstep 0.8.
! 195: > Fixes bug that caused temporary speed anomalies after pausing.
! 196: > Improves dummy RAMDAC emulation.
! 197:
! 198: Previous v1.7:
! 199: > Adds support for twisted-pair Ethernet.
! 200: > Adds SoftFloat emulation for 68882 transcendental FPU instructions.
! 201: > Adds SoftFloat emulation for i860 floating point instructions.
! 202: > Improves 68040 FPU emulation to support resuming of instructions.
! 203: > Improves Ethernet connection stability.
! 204: > Improves efficiency while emulation is paused.
! 205: > Improves device timings to be closer to real hardware.
! 206: > Fixes bug in timing system. MO drive now works in variable speed mode.
! 207: > Fixes bug in 68040 MMU that caused crashes and kernel panics.
! 208: > Fixes bug in 68040 FPU that caused crashes due to unnormal zero.
! 209: > Fixes bug in FMOVEM that modified wrong FPU registers.
! 210: > Fixes bug that sometimes caused hangs if sound was disabled.
! 211: > Fixes bug that caused lags in responsiveness during sound output.
! 212: > Fixes bug that caused a crash when using write protected image files.
! 213:
! 214: Previous v1.8:
! 215: > Removes support for host keyboard repeat because it became useless.
! 216: > Fixes bug that caused FMOVECR to return wrong values in some cases.
! 217: > Fixes bug in timing system that caused hangs in variable speed mode.
! 218:
1.1 root 219:
220: 7) Running Previous
221: -------------------
222:
223: For running the emulator, you need an image of the boot ROM of the emulated
224: machine.
225:
226: While the emulator is running, you can open the configuration menu by
227: pressing F12, toggle between fullscreen and windowed mode by pressing F11
228: and initiate a clean shut down by pressing F10 (emulates the power button).
229:
230:
231: 8) Contributors
232: ---------------
233:
1.1.1.2 ! root 234: Previous was written by Andreas Grabher, Simon Schubiger and Gilles Fetis.
! 235:
1.1 root 236: Many thanks go to the members of the NeXT International Forums for their
237: help. Special thanks go to Gavin Thomas Nicol, Piotr Twarecki, Toni Wilen,
1.1.1.2 ! root 238: Michael Bosshard, Thomas Huth, Olivier Galibert, Jason Eckhardt, Jason
! 239: Stevens, Daniel L'Hommedieu, Vaughan Kaufman and Peter Leonard!
1.1 root 240: This emulator would not exist without their help.
241:
242:
243: 9) Contact
244: ----------
245:
246: If you want to contact the authors of Previous, please have a look at the
247: NeXT International Forums (http://www.nextcomputers.org/forums).
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.