Skip to content

Commit 8e49157

Browse files
author
cebix
committed
Imported sources
1 parent 100e7de commit 8e49157

File tree

140 files changed

+50125
-0
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

140 files changed

+50125
-0
lines changed

BasiliskII/BasiliskII.spec

Lines changed: 66 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,66 @@
1+
Summary: A free, portable Mac II emulator
2+
Name: BasiliskII
3+
Version: 0.7
4+
Release: 2
5+
URL: http://www.uni-mainz.de/~bauec002/B2Main.html
6+
Source: BasiliskII_src_250799.tar.gz
7+
Copyright: GPL
8+
Group: Applications/Emulators
9+
Vendor: PLD
10+
Packager: Christian Bauer <Christian.Bauer@uni-mainz.de>
11+
BuildRoot: /tmp/%{name}-%{version}-root
12+
13+
%description
14+
Basilisk II is a free, portable, Open Source 68k Mac emulator. It requires
15+
a copy of a Mac ROM and a copy of MacOS to run. Basilisk II is freeware and
16+
distributed under the GNU General Public License.
17+
18+
Some features of Basilisk II:
19+
- Emulates either a Mac Classic (which runs MacOS 0.x thru 7.5)
20+
or a Mac II series machine (which runs MacOS 7.x, 8.0 and 8.1),
21+
depending on the ROM being used
22+
- Color video display
23+
- CD quality sound output
24+
- Floppy disk driver (only 1.44MB disks supported)
25+
- Driver for HFS partitions and hardfiles
26+
- CD-ROM driver with basic audio functions
27+
- Ethernet driver
28+
- Serial drivers
29+
- SCSI Manager (old-style) emulation
30+
- Emulates extended ADB keyboard and 3-button mouse
31+
- Uses UAE 68k emulation or (under AmigaOS) real 68k processor
32+
33+
%prep
34+
%setup -q
35+
36+
%build
37+
cd src/Unix
38+
./configure --prefix=/usr
39+
40+
make RPM_OPT_FLAGS="$RPM_OPT_FLAGS"
41+
42+
%install
43+
rm -rf $RPM_BUILD_ROOT
44+
45+
install -d $RPM_BUILD_ROOT/usr/lib/BasiliskII/Linux
46+
install -d $RPM_BUILD_ROOT/usr/X11R6/bin
47+
48+
install -m755 -s src/Unix/BasiliskII $RPM_BUILD_ROOT/usr/X11R6/bin
49+
50+
cp -R src/Unix/Linux/* $RPM_BUILD_ROOT/usr/lib/BasiliskII/Linux
51+
mkdir docs
52+
cp CHANGES COPYING README TECH TODO docs
53+
54+
%clean
55+
rm -rf $RPM_BUILD_ROOT
56+
57+
%files
58+
%defattr(-,root,root)
59+
%doc docs/*
60+
/usr/lib/BasiliskII
61+
/usr/X11R6/bin/*
62+
63+
%changelog
64+
* Fri Jul 23 1999 Roman Niewiarowski <newrom@pasjo.net.pl>
65+
[0.6-1]
66+
- First rpm release

BasiliskII/CHANGES

Lines changed: 300 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,300 @@
1+
V0.7 (alpha)
2+
- Unix/sys_unix.cpp: Sys_open() checks whether an HFS volume is currently
3+
mounted under Linux and tries to unmount it
4+
- Unix/sys_unix.cpp: implemented SysAddDiskPrefs() for Linux (scans
5+
/etc/fstab to find HFS volumes)
6+
- Unix/sys_unix.cpp: implemented Sys(Prevent/Allow)Removal() [Ryan Cumming]
7+
- Unix/main_unix.cpp: added call to gtk_set_locale() before gtk_init()
8+
[Toshimitsu Tanaka]
9+
10+
V0.7 (alpha) - 25.Jul.1999
11+
- with 32-bit clean ROMs, the CPU type is now reported as a 68030
12+
(for those OpenTransport fans :-)
13+
- added new prefs item "nosound" to disable sound output
14+
- sound output implemented for BeOS, Linux, Solaris and AmigaOS
15+
(requires Sound Manager 3.x)
16+
- dummy/audio_dummy.cpp: created
17+
- dummy/prefs_dummy.cpp: created
18+
- dummy/xpram_dummy.cpp: created
19+
- macos_util.cpp: added FileDiskLayout()
20+
- video.cpp: removed useless BlankMousePointer flag
21+
- uae_cpu: updated to UAE 0.8.9
22+
- uae_cpu/gencpu.c: fixed bug in CAS2, OpenTransport works now
23+
- Unix: moved Linux- and FreeBSD-specific files to their respective
24+
directories
25+
- Unix: added 64-bit data types (needed by timer_unix.cpp)
26+
- Unix: added keyboard translation method using raw keycodes instead of
27+
keysyms (controlled by "keycodes" and "keycodefile" prefs items) which
28+
doesn't depend on the selected keymap
29+
- Unix: when running as root, Basilisk II tries to assign real-time
30+
priorities to some threads
31+
- Unix: calls to nanosleep() protected by autoconf define
32+
- Unix/main_unix.cpp: tick thread replaced by POSIX.4 timer when possible
33+
- Unix/timer_unix.cpp: uses POSIX.4 timing facilities when possible
34+
- Unix/video_x.cpp: all X calls during emulation are now done from
35+
the redraw thread which is also active in DGA mode; as a result,
36+
XLockServer()/XUnlockServer() are no longer necessary
37+
- Unix/sysdeps.h: changed C++ comments to C comments as this file is
38+
included by some *.c files in uae_cpu [Brian J. Johnson]
39+
- Unix/sysdeps.h: added unaligned access functions for SGI MIPSPro
40+
compiler [Brian J. Johnson]
41+
- Unix/Irix/unaligned.c: created [Brian J. Johnson]
42+
- Windows: updated sources
43+
44+
V0.6 (alpha) - 12.Jul.1999
45+
- Unix: Basilisk II now accepts a "-display <display>" argument to
46+
specify the X display to use
47+
- Unix: mounting floppies with Ctrl-F1 now works
48+
- Unix/ether_linux.cpp: now works when ethertap is configured for
49+
multicast support
50+
- Unix/main_unix.cpp: XOpenDisplay() is now called from main()
51+
- Unix/scsi_freebsd.cpp: added support for FreeBSD 2.x [Orlando Bassotto]
52+
- Unix/posix_sem.cpp: updated [Orlando Bassotto]
53+
- Unix/prefs_editor_gtk.cpp: serial pane recognizes FreeBSD serial/
54+
printer devices [Orlando Bassotto]
55+
- Unix/serial_unix.cpp: FreeBSD printer devices are recognized
56+
[Orlando Bassotto]
57+
- Unix/sys_unix.cpp: FreeBSD CD-ROM/floppy support, correct default
58+
serial prefs for FreeBSD [Orlando Bassotto]
59+
- Unix/sys_unix.cpp: fixed SysIsDiskInserted for Linux floppy
60+
- Unix/FreeBSD/scsidump.cpp: added [Orlando Bassotto]
61+
62+
V0.6 (alpha) - 5.Jul.1999
63+
- fixed mouse for Classic ROM and MacOS 6.x/7.x
64+
- Unix/ether_linux.cpp: added ethertap support (see README for details)
65+
- dummy/clip_dummy.cpp: created
66+
67+
V0.6 (alpha) - 2.Jul.1999
68+
- rom_patches.cpp: added CheckROM() which has to be called before
69+
PatchROM()
70+
- rom_patches.cpp: started ROM patches for Classic/SE ROMs
71+
- adb.cpp: ADB handlers get ADBBase passed in a3
72+
- adb.cpp: moved temporary data area to ADBBase+0x163 (Mac Classic
73+
mouse handler wants it there)
74+
- emul_op.cpp/EMUL_OP_CLKNOMEM: reading from the RTC time registers
75+
yields the correct time and date
76+
- uae_cpu/cpu_emulation.h: added FLAYOUT_NONE to disable frame buffer
77+
mapping
78+
- uae_cpu/basilisk_glue.cpp: RAMBaseMac/ROMBaseMac are now set in
79+
Init680x0() (instead of main_*.cpp)
80+
- uae_cpu/memory.cpp: added support for Mac Plus/II memory maps
81+
and 24 bit addressing
82+
- uae_cpu/newcpu.cpp: re-implemented support for 68000/010 emulation
83+
- uae_cpu/cpuopti.c: patched for egcs [Orlando Bassotto]
84+
- main_*.cpp: added TwentyFourBitAddressing flag
85+
- main_*.cpp: CPU type and addressing mode depends on ROM version
86+
- main_*.cpp: tick thread changed to use new TimerDateTime() function
87+
- include/video.h: VideoInit() takes "classic" parameter to select
88+
"Classic" video mode (512x342, 1-bit)
89+
- include/timer.h: new function TimerDateTime() to get local date/time
90+
in Mac format
91+
- Unix: support for FreeBSD [Orlando Bassotto]
92+
- Unix/scsi_freebsd-cam.cpp: created [Orlando Bassotto]
93+
- Unix/posix_sem.cpp: created [Orlando Bassotto]
94+
- Unix/main_unix.cpp: added call to XF86DGAForkApp()
95+
- Unix/video_x.cpp: support for Classic video mode and display on
96+
1-bit screens
97+
- Unix/video_x.cpp: added check whether screen is really DGA capable
98+
- Unix/video_x.cpp: added check for image endianess
99+
- Unix/sys_unix.cpp: added replacement for Linux llseek() for platforms
100+
that don't have it
101+
- Unix/*.cpp: replaced sleep()/usleep() by nanosleep()
102+
- Amiga/prefs_editor_amiga.cpp: ROM file selection via file requester
103+
didn't work
104+
105+
V0.6 (alpha) - 22.Jun.1999
106+
- fixed small compilation problems on BeOS/x86
107+
- rsrc_patches.cpp: fixed for MacOS 7.6.1
108+
- dummy/scsi_dummy.cpp: scsi_send_cmd() was missing timeout parameter
109+
- Unix/video_x.cpp: fixed compilation problem on systems without DGA
110+
- BeOS/prefs_editor_beos.cpp: it is now possible to drop ROM files on
111+
the "ROM File" control
112+
- BeOS/sys_beos.cpp: Basilisk II will not try to unmount volumes (from
113+
BeOS) that are to be mounted read-only
114+
115+
V0.6 (alpha) - 20.Jun.1999
116+
- scsi.cpp: added "timeout" parameter to scsi_send_cmd()
117+
- scsi_*.cpp: fixed S/G table processing bug in scsi_send_cmd()
118+
(every entry was written to/read from the same buffer address)
119+
- Unix/scsi_linux.cpp: implemented
120+
- Unix/video_x.cpp: new hotkeys: Ctrl-Esc = emergency quit from DGA mode,
121+
Ctrl-Tab = suspend DGA mode
122+
- Unix/video_x.cpp: implemented VideoQuitFullScreen() (used by
123+
ErrorAlert())
124+
- BeOS/video_beos.cpp: implemented VideoQuitFullScreen() (used by
125+
ErrorAlert())
126+
127+
V0.6 (alpha) - 19.Jun.1999
128+
- sys_*.cpp: 400K DiskCopy disk images are now recognized (84 byte
129+
header)
130+
- user_strings.cpp: added strings for GTK preferences editor
131+
- Unix: implemented preferences editor (requires GTK)
132+
- Unix: added "install" target to Makefile
133+
- Unix: created minimal man page
134+
- Unix/main_unix.cpp: ErrorAlert() and WarningAlert() pop up dialog
135+
boxes when GTK is present
136+
- BeOS/prefs_editor_beos.cpp: added "Create" button to volume list
137+
- BeOS/prefs_editor_beos.cpp: "About" dialog added
138+
139+
V0.5 (alpha) - 13.Jun.1999
140+
- prefs.cpp: added ZapPRAM()
141+
- prefs.cpp: PrefsReplaceString() can now take an index
142+
- user_strings.cpp: added strings for preferences editor
143+
- prefs_editor_*.*: created
144+
- sys.h: SysCDStop() now takes the MSF address of the lead-out track
145+
as a parameter
146+
- AmigaOS: start offset and size of devices is now given in blocks,
147+
not bytes
148+
- AmigaOS: implemented preferences editor
149+
- BeOS: implemented preferences editor
150+
- AmigaOS/sys_amiga.cpp: added checks for NSD and 64-bit TD commands
151+
(not yet used)
152+
- AmigaOS/sys_amiga.cpp: implemented CD audio commands
153+
- Unix/sys_unix.cpp: CD-ROM devices are opened with O_NONBLOCK flag
154+
- Unix/sys_unix.cpp: using CDROM_DRIVE_STATUS to check for inserted
155+
disks if drive supports it
156+
- Unix/sys_unix.cpp: CD-ROM devices are closed and reopened on eject
157+
to clear the driver's internal buffers
158+
- Unix/video_x.cpp: added incremental refresh mode [David Lawrence]
159+
- Unix/video_x.cpp: small changes to the DGA code
160+
161+
V0.5 (alpha) - 17.May 1999
162+
- new "fpu" prefs item to enable/disable the (buggy) UAE FPU emulation
163+
- Defaults for platform-specific prefs items can be set in the new
164+
AddPlatformPrefsDefault() function which gets called by PrefsInit()
165+
- added dummy audio component, so MacOS versions >=7.5 should be more
166+
stable when running programs that try to do something with sound
167+
- adb.cpp: relative mouse mode should work a bit better
168+
- macos_util.cpp: new function HasMacStarted() to check Mac warm
169+
start flag
170+
- macos_util.cpp: new function MountVolume() to aid implementation
171+
of manual volume mounting
172+
- cdrom.cpp: added CDROMMountVolume()
173+
- BeOS: replaced "Mount floppy" menu item by submenu with list of all
174+
removable volumes
175+
- Win32: many fixes and improvements [Lauri Pesonen]
176+
177+
V0.5 (alpha) - 8.May 1999
178+
- added information about GPL to all source files
179+
- rom_patches.cpp: fixed one unaligned access problem (Sparc)
180+
- replaced "off_t" by "loff_t" to allow 64 bit disk access under Linux
181+
- created "dummy" platform directory containing generic "do-nothing"
182+
versions of certain files to aid in testing and porting
183+
- Unix: improved autoconf stuff and sysdeps.h
184+
- Unix: now compiles under Solaris
185+
- Unix/video_x.cpp: automatic SHM detection, fallback to XPutImage
186+
187+
V0.5 (alpha) - 26.Apr.1999
188+
- main_*.cpp: ramsize is rounded down to 1MB boundary
189+
- uae_cpu/memory.h: added "REGPARAM2" in more places [Lauri Pesonen]
190+
- uae_cpu/memory.cpp: changed "Diff" variables from "uae_8 *" to
191+
"uae_u32" [Lauri Pesonen]
192+
- uae_cpu/memory.cpp: added "REGPARAM2" in more places [Lauri Pesonen]
193+
- uae_cpu/newcpu.h: added "REGPARAM2" in more places [Lauri Pesonen]
194+
- uae_cpu/newcpu.cpp: added "REGPARAM2" in more places [Lauri Pesonen]
195+
- Windows/*: integrated updated Windows sources from Lauri Pesonen
196+
197+
V0.5 (alpha) - 25.Apr.1999
198+
- prefs.cpp/PrefsRemoveItem(): deleting the last item now works
199+
- uae_cpu/memory.cpp: changed "uae_u8 REGPARAM2 *func()" to
200+
"uae_u8 *REGPARAM2 func()"
201+
- Unix/ether_unix.cpp: implemented
202+
- Unix/Linux/NetDriver: created
203+
- Unix/video_x.cpp: added support for 32 bit screens, cleaned up
204+
VisualInfo code
205+
- BeOS/ether_beos.cpp: cleaned up the code
206+
- BeOS/video_beos.cpp: full screen video mode and color depth can now
207+
be set via prefs("scr/<mode>")
208+
209+
V0.4 (alpha) - 15.Apr.1999
210+
- Added some literature references to the source files
211+
- Modularized CPU engine: the interface of the CPU engine is now
212+
defined in cpu_emulation.h, so different CPU engines can be
213+
substituted more easily [as requested by Bill Huey]
214+
- uae_cpu/gencpu.c: duplicate_carry() was missing in SUB and NBCD routines
215+
- Unix: added autoconf stuff
216+
- Unix: modified the makefile so it won't fail if cpuopti didn't work
217+
[Daniel Thompson]
218+
219+
V0.4 (alpha) - 11.Apr.1999
220+
- cdrom.cpp: find_hfs_partition() bailed out too soon when finding no
221+
"PN" signature [Lauri Pesonen]
222+
- prefs.cpp: prefs file allows more whitespace between keyword and value
223+
[Lauri Pesonen]
224+
- prefs.cpp: remodeled to allow platform-specific prefs items (list of
225+
keywords is kept in table)
226+
- video.cpp/cscSetEntries: luminance mapping uses integer instead of
227+
floating point math
228+
- video_*.cpp: on most systems, the frame buffer is allocated with
229+
two additional lines as some ROM versions seem to write behind
230+
the frame buffer proper
231+
- BeOS/Unix/sysdeps.h: defined X86_ASSEMBLY on i386/GCC systems
232+
- BeOS/Unix/sysdeps.h: redefined get/put_mem() functions to take and
233+
return an uae_u32 value, added some more x86 optimizations
234+
- Unix/serial_unix.cpp/kSERDBaudRate: rates between 57600 and 65535
235+
result in a rate of 57600 [Lauri Pesonen]
236+
237+
V0.4 (alpha) - 10.Apr.1999
238+
- upgraded to UAE 0.8.8 CPU, CPU is now built with "gencpu", UAE sources
239+
moved to "uae" directory
240+
- new preferences item "rom" to specify the path of the ROM file
241+
- new preferences item "ether" for Ethernet driver
242+
- new INTFLAG_ETHER interrupt flag
243+
- main_*.cpp: added ChoiceAlert()
244+
- main_*.cpp: disabled UAE FPU (as it is buggy)
245+
- serial_*.cpp: device_name is now a "const char *"
246+
- serial_*.cpp: implemented monitor (#define MONITOR 1 to activate)
247+
- *.h: changed "#ifdef _XXX_H_" to "#ifdef XXX_H" as symbols starting
248+
with an underscore are reserved
249+
- rom_patches.cpp: icon data moved to sony/disk/cdrom.cpp
250+
- rom_patches.cpp: removed unnecessary a0/a1 save/restore from drivers
251+
- slot_rom.cpp: removed unnecessary a0/a1 save/restore from drivers
252+
- serial_defs.h: added error codes
253+
- AmigaOS: the Kickstart ROM is no longer used to redirect NIL pointer
254+
accesses as this crashes some machines (especially 68040-based);
255+
a scratch memory block is used instead
256+
- AmigaOS/serial_amiga.cpp: implemented
257+
- AmigaOS/ether_amiga.cpp: implemented
258+
- AmigaOS/sys_amiga.cpp: SysAddSerialPrefs() now returns real defaults
259+
- AmigaOS/main_amiga.cpp: when the memory for the Mac RAM and ROM
260+
cannot be allocated, an error message is displayed (instead of crashing)
261+
- AmigaOS/main_amiga.cpp: interrupts are disabled during execution
262+
of an EMUL_OP routine
263+
- AmigaOS/asm_support.asm: the CTRL-C handler checks for pending
264+
AmigaDOS operations
265+
- AmigaOS/asm_support.asm: the interrupt signal exception is rethrown
266+
when the interrupt level in EmulatedSR gets lowered while interrupts
267+
are pending
268+
- BeOS: switched from project files to Be supplied makefile system
269+
- BeOS/ether_beos.cpp: implemented
270+
- BeOS/serial_beos.cpp: modem status of parallel device is returned
271+
as (dsrEvent | dcdEvent | ctsEvent)
272+
- BeOS/serial_beos.cpp: implemented kSERDBaudRate
273+
- BeOS/serial_beos.cpp: serdtDCE is set in PrimeIn()/PrimeOut()
274+
- Unix/serial_unix.cpp: added support for parallel ports
275+
- Unix/serial_unix.cpp: serdtDCE is set in PrimeIn()/PrimeOut()
276+
- Unix/video_x.cpp: pressing F12 and q will quit Basilisk II in DGA mode
277+
(useful when it crashed)
278+
279+
V0.3 (alpha) - 14.Mar.1999
280+
- Unix/video_x.cpp: added 15, 16 and 32 bit window modes [Bill Huey]
281+
- BeOS/video_beos.cpp: "screen" prefs item is now either
282+
"win/<width>/<height>" for window mode or "scr" for full-screen
283+
mode
284+
- added documentation of preferences file format to README
285+
286+
V0.2 (alpha) - 11.Mar.1999
287+
- tested with ROM versions 19 and 26
288+
- prefs.cpp: renamed TYPE_BOOL to TYPE_BOOLEAN beacuse of name clash on
289+
BeOS R4.1
290+
- uae_memory.cpp: added support for frame buffer pixel type conversion
291+
in virtual addressing mode, the Mac frame buffer layout now has to be
292+
specified in MacFrameLayout (video.h)
293+
- Unix/video_x.cpp: the "screen" prefs item is now read to select
294+
window mode (with a specified window size) or DGA mode
295+
- Unix/video_x.cpp: DGA mode supports 15, 16 and 32 bit modes (packed
296+
24 bit pixels don't work)
297+
- Unix/Makefile.linux: added -D_REENTRANT to compiler flags
298+
299+
V0.2 (alpha) - 23.Jan.1999
300+
- first alpha release

0 commit comments

Comments
 (0)