mirror of
https://github.com/InvisibleUp/uvmac.git
synced 2024-12-22 07:31:39 +00:00
Finish (kinda half-baked) CMake file
The build itself is very broken due to the missing Sony driver patch... but it does, technically, compile and run.
This commit is contained in:
parent
d3a1b5690d
commit
a310fbf313
3
.gitignore
vendored
3
.gitignore
vendored
@ -5,4 +5,5 @@ bld
|
||||
*.dsk
|
||||
*.ROM
|
||||
*.kdev4
|
||||
*.pdb
|
||||
*.pdb
|
||||
build/
|
222
CMakeLists.txt
Normal file
222
CMakeLists.txt
Normal file
@ -0,0 +1,222 @@
|
||||
cmake_minimum_required(VERSION 3.1)
|
||||
|
||||
if(${CMAKE_VERSION} VERSION_LESS 3.15)
|
||||
cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION})
|
||||
else()
|
||||
cmake_policy(VERSION 3.15)
|
||||
endif()
|
||||
|
||||
project(
|
||||
microvmac
|
||||
VERSION 0.37.0
|
||||
DESCRIPTION "68k Macintosh emulator"
|
||||
LANGUAGES C
|
||||
)
|
||||
|
||||
# For now, only target WIN32; just to make sure everything still works
|
||||
#set(TARGET_PLATFORM AUTO CACHE STRING "Set platform to compile for")
|
||||
#set_property(CACHE TARGET_PLATFORM PROPERTY STRINGS WINDOWS SDL2)
|
||||
|
||||
# Git submodule libraries
|
||||
add_library(incbin INTERFACE)
|
||||
target_include_directories(incbin INTERFACE src/incbin/)
|
||||
|
||||
# Hardware libraries
|
||||
# Some are temporarily disabled while I get CMake up and running
|
||||
|
||||
#add_library(
|
||||
# hw_adb OBJECT
|
||||
# src/HW/ADB/ADBEMDEV.c
|
||||
#)
|
||||
#target_include_directories(hw_adb PRIVATE src/ cfg/)
|
||||
#target_include_directories(hw_adb PRIVATE src/HW/ADB/)
|
||||
#target_compile_definitions(hw_adb PUBLIC EmADB=1)
|
||||
|
||||
add_library(
|
||||
hw_disk OBJECT
|
||||
src/HW/DISK/IWMEMDEV.c
|
||||
src/HW/DISK/SONYEMDV.c
|
||||
)
|
||||
target_include_directories(hw_disk PRIVATE src/ cfg/)
|
||||
target_include_directories(hw_disk PRIVATE src/HW/DISK/)
|
||||
|
||||
add_library(
|
||||
hw_kbrd OBJECT
|
||||
src/HW/KBRD/KBRDEMDV.c
|
||||
)
|
||||
target_include_directories(hw_kbrd PRIVATE src/ cfg/)
|
||||
target_include_directories(hw_kbrd PRIVATE src/HW/KBRD/)
|
||||
target_compile_definitions(hw_kbrd PUBLIC EmClassicKbrd=1)
|
||||
|
||||
add_library(
|
||||
hw_m68k OBJECT
|
||||
# src/HW/M68K/DISAM68K.c
|
||||
src/HW/M68K/M68KITAB.c
|
||||
src/HW/M68K/MINEM68K.c
|
||||
)
|
||||
target_include_directories(hw_m68k PRIVATE src/ cfg/)
|
||||
target_include_directories(hw_m68k PUBLIC src/HW/M68K/)
|
||||
|
||||
add_library(
|
||||
hw_mouse OBJECT
|
||||
src/HW/MOUSE/MOUSEMDV.c
|
||||
)
|
||||
target_include_directories(hw_mouse PRIVATE src/ cfg/)
|
||||
target_include_directories(hw_mouse PRIVATE src/HW/MOUSE/)
|
||||
|
||||
#add_library(
|
||||
# hw_powerman OBJECT
|
||||
# src/HW/POWERMAN/PMUEMDEV.c
|
||||
#)
|
||||
#target_include_directories(hw_powerman PRIVATE src/ cfg/)
|
||||
#target_include_directories(hw_powerman PRIVATE src/HW/POWERMAN/)
|
||||
#target_compile_definitions(hw_powerman PUBLIC EmPMU=1)
|
||||
|
||||
add_library(
|
||||
hw_rtc OBJECT
|
||||
src/HW/RTC/RTCEMDEV.c
|
||||
)
|
||||
target_include_directories(hw_rtc PRIVATE src/ cfg/)
|
||||
target_include_directories(hw_rtc PRIVATE src/HW/RTC/)
|
||||
target_compile_definitions(hw_rtc PUBLIC EmRtc=1)
|
||||
|
||||
add_library(
|
||||
hw_scc OBJECT
|
||||
src/HW/SCC/SCCEMDEV.c
|
||||
)
|
||||
target_include_directories(hw_scc PRIVATE src/ cfg/)
|
||||
target_include_directories(hw_scc PRIVATE src/HW/SCC/)
|
||||
|
||||
add_library(
|
||||
hw_screen OBJECT
|
||||
src/HW/SCREEN/SCRNEMDV.c
|
||||
)
|
||||
target_include_directories(hw_screen PRIVATE src/ cfg/)
|
||||
target_include_directories(hw_screen PRIVATE src/HW/SCREEN/)
|
||||
|
||||
add_library(
|
||||
hw_scsi OBJECT
|
||||
src/HW/SCSI/SCSIEMDV.c
|
||||
)
|
||||
target_include_directories(hw_scsi PRIVATE src/ cfg/)
|
||||
target_include_directories(hw_scsi PRIVATE src/HW/SCSI/)
|
||||
|
||||
add_library(
|
||||
hw_sound OBJECT
|
||||
# src/HW/SOUND/ASCEMDEV.c
|
||||
src/HW/SOUND/SNDEMDEV.c
|
||||
)
|
||||
target_include_directories(hw_sound PRIVATE src/ cfg/)
|
||||
target_include_directories(hw_sound PRIVATE src/HW/SOUND/)
|
||||
|
||||
add_library(
|
||||
hw_via1 OBJECT
|
||||
src/HW/VIA/VIAEMDEV.c
|
||||
)
|
||||
target_include_directories(hw_via1 PRIVATE src/ cfg/)
|
||||
target_include_directories(hw_via1 PRIVATE src/HW/VIA/)
|
||||
|
||||
#add_library(
|
||||
# hw_via2 OBJECT
|
||||
# src/HW/VIA/VIA2EMDV.c
|
||||
#)
|
||||
#target_include_directories(hw_via2 PRIVATE src/ cfg/)
|
||||
#target_include_directories(hw_via2 PRIVATE src/HW/VIA/)
|
||||
#target_compile_definitions(hw_via2 PUBLIC EmVIA2=1)
|
||||
|
||||
#add_library(
|
||||
# hw_vidcard OBJECT
|
||||
# src/HW/VIDCARD/VIDEMDEV.c
|
||||
#)
|
||||
#target_include_directories(hw_vidcard PRIVATE src/ cfg/)
|
||||
#target_include_directories(hw_vidcard PRIVATE src/HW/VIA/)
|
||||
#target_compile_definitions(hw_vidcard PUBLIC EmVidCard=1)
|
||||
#target_compile_definitions(hw_vidcard PUBLIC IncludeVidMem=1)
|
||||
|
||||
# Macintosh definitions
|
||||
add_library(tgt_macbase INTERFACE) # things every Mac has
|
||||
target_link_libraries(
|
||||
tgt_macbase INTERFACE
|
||||
hw_disk
|
||||
hw_m68k
|
||||
hw_rtc
|
||||
hw_sound
|
||||
hw_via1
|
||||
)
|
||||
|
||||
add_library(tgt_macplus INTERFACE) # Macintosh Plus
|
||||
target_link_libraries(
|
||||
tgt_macplus INTERFACE
|
||||
tgt_macbase
|
||||
hw_screen
|
||||
hw_mouse
|
||||
hw_kbrd
|
||||
)
|
||||
target_compile_definitions(tgt_macplus INTERFACE CurEmMd=kEmMd_Plus)
|
||||
|
||||
#add_library(tgt_macii INTERFACE) # Macintosh II
|
||||
#target_link_libraries(tgt_macii INTERFACE tgt_macbase hw_vidcard hw_adb)
|
||||
#target_compile_definitions(tgt_macii INTERFACE CurEmMd=kEmMd_Plus)
|
||||
|
||||
# User interface definitions
|
||||
|
||||
add_library(
|
||||
ui_win32 OBJECT
|
||||
src/UI/COMOSGLU.c
|
||||
src/UI/CONTROLM.c
|
||||
src/UI/WIN32/DBGLOG.c
|
||||
src/UI/WIN32/INTLKBRD.c
|
||||
src/UI/WIN32/KEYBOARD.c
|
||||
src/UI/WIN32/OSGLUWIN.c
|
||||
src/UI/WIN32/SOUND.c
|
||||
src/UI/WIN32/TIMEDATE.c
|
||||
# src/UI/WIN32/main.rc
|
||||
# src/UI/WIN32/ICONAPPW.ico
|
||||
# src/UI/WIN32/ICONDSKW.ico
|
||||
# src/UI/WIN32/ICONROMW.ico
|
||||
)
|
||||
target_include_directories(ui_win32 PRIVATE cfg/ src/)
|
||||
target_include_directories(ui_win32 PRIVATE src/UI/ src/UI/WIN32/)
|
||||
target_link_libraries(ui_win32 PUBLIC winmm ole32 uuid)
|
||||
#set_source_files_properties(src/UI/WIN32/main.rc PROPERTIES LANGUAGE RC)
|
||||
#set_source_files_properties(src/UI/WIN32/ICONAPPW.ico PROPERTIES EXTERNAL_OBJECT True)
|
||||
#set_source_files_properties(src/UI/WIN32/ICONDSKW.ico PROPERTIES EXTERNAL_OBJECT True)
|
||||
#set_source_files_properties(src/UI/WIN32/ICONROMW.ico PROPERTIES EXTERNAL_OBJECT True)
|
||||
|
||||
#add_library(
|
||||
# ui_sdl2 OBJECT
|
||||
# src/UI/COMOSGLU.c
|
||||
# src/UI/CONTROLM.c
|
||||
# src/UI/SDL2/OSGLUSD2.c
|
||||
#)
|
||||
#target_include_directories(ui_sdl2 PUBLIC src/UI/ src/UI/SDL2/)
|
||||
|
||||
## Final compiled program definition
|
||||
|
||||
add_executable(
|
||||
microvmac
|
||||
src/PROGMAIN.c
|
||||
src/GLOBGLUE.c
|
||||
src/PATCHES/ROMEMDEV.c
|
||||
src/UTIL/DATE2SEC.c
|
||||
)
|
||||
target_include_directories(microvmac PRIVATE cfg/ src/)
|
||||
set_target_properties(microvmac PROPERTIES C_STANDARD 99 C_STANDARD_REQUIRED True)
|
||||
#target_link_libraries(microvmac INTERFACE tgt_macplus) # temporary
|
||||
target_link_libraries(microvmac PRIVATE incbin ui_win32)
|
||||
|
||||
# temporary, because "INTERFACE" isn't working how I expect it to
|
||||
target_link_libraries(
|
||||
microvmac PRIVATE
|
||||
hw_disk
|
||||
hw_m68k
|
||||
hw_rtc
|
||||
hw_sound
|
||||
hw_via1
|
||||
hw_screen
|
||||
hw_mouse
|
||||
hw_kbrd
|
||||
hw_scc
|
||||
hw_scsi
|
||||
)
|
||||
target_compile_definitions(microvmac PUBLIC CurEmMd=kEmMd_Plus)
|
@ -1,24 +0,0 @@
|
||||
cmake_minimum_required(VERSION 3.10)
|
||||
|
||||
project(microvmac)
|
||||
|
||||
set_property(C_STANDARD 99)
|
||||
set_property(C_STANDARD_REQUIRED True)
|
||||
|
||||
set(TARGET_PLATFORM AUTO CACHE STRING "Set platform to compile for")
|
||||
set_property(CACHE TARGET_PLATFORM PROPERTY STRINGS WINDOWS X11 OSX OS9 NDS GTK SDL SDL2)
|
||||
|
||||
include_directories(cfg)
|
||||
|
||||
file(GLOB_RECURSE microvmac_SOURCES "src/*.cpp")
|
||||
file(GLOB_RECURSE microvmac_HEADERS "src/*.h")
|
||||
|
||||
set (microvmac_INCLUDE_DIRS "")
|
||||
foreach (_headerFile ${microvmac_HEADERS})
|
||||
get_filename_component(_dir ${_headerFile} PATH)
|
||||
list (APPEND microvmac_INCLUDE_DIRS ${_dir})
|
||||
endforeach()
|
||||
list(REMOVE_DUPLICATES microvmac_INCLUDE_DIRS)
|
||||
|
||||
add_executable(microvmac VERSION 0.37.0 ${microvmac_SOURCES})
|
||||
target_include_directories(microvmac PRIVATE ${microvmac_INCLUDE_DIRS})
|
150
cfg/EMCONFIG.h
150
cfg/EMCONFIG.h
@ -10,31 +10,9 @@
|
||||
#ifndef EMCONFIG_H
|
||||
#define EMCONFIG_H
|
||||
|
||||
#define EmClassicKbrd 1
|
||||
#define EmADB 0
|
||||
#define EmRTC 1
|
||||
#define EmPMU 0
|
||||
#define EmVIA2 0
|
||||
#define Use68020 0
|
||||
#define EmFPU 0
|
||||
#define EmMMU 0
|
||||
#define EmASC 0
|
||||
//#define CurEmMd kEmMd_Plus
|
||||
|
||||
#define CurEmMd kEmMd_Plus
|
||||
|
||||
#define ClockMult 1
|
||||
|
||||
#define WantCycByPriOp 1
|
||||
#define WantCloserCyc 0
|
||||
|
||||
#define kRAMa_Size 0x00200000
|
||||
#define kRAMb_Size 0x00200000
|
||||
|
||||
#define IncludeVidMem 0
|
||||
|
||||
#define EmVidCard 0
|
||||
|
||||
#define MaxATTListN 16
|
||||
#define MaxATTListN 32
|
||||
#define IncludeExtnPbufs 1
|
||||
#define IncludeExtnHostTextClipExchange 1
|
||||
|
||||
@ -49,125 +27,11 @@
|
||||
#define AutoKeyThresh 0x06
|
||||
#define AutoKeyRate 0x03
|
||||
|
||||
|
||||
/* the Wire variables are 1/0, not true/false */
|
||||
|
||||
enum {
|
||||
|
||||
Wire_VIA1_iA0_SoundVolb0,
|
||||
#define SoundVolb0 (Wires[Wire_VIA1_iA0_SoundVolb0])
|
||||
#define VIA1_iA0 (Wires[Wire_VIA1_iA0_SoundVolb0])
|
||||
|
||||
Wire_VIA1_iA1_SoundVolb1,
|
||||
#define SoundVolb1 (Wires[Wire_VIA1_iA1_SoundVolb1])
|
||||
#define VIA1_iA1 (Wires[Wire_VIA1_iA1_SoundVolb1])
|
||||
|
||||
Wire_VIA1_iA2_SoundVolb2,
|
||||
#define SoundVolb2 (Wires[Wire_VIA1_iA2_SoundVolb2])
|
||||
#define VIA1_iA2 (Wires[Wire_VIA1_iA2_SoundVolb2])
|
||||
|
||||
Wire_VIA1_iA4_MemOverlay,
|
||||
#define MemOverlay (Wires[Wire_VIA1_iA4_MemOverlay])
|
||||
#define VIA1_iA4 (Wires[Wire_VIA1_iA4_MemOverlay])
|
||||
#define VIA1_iA4_ChangeNtfy MemOverlay_ChangeNtfy
|
||||
|
||||
Wire_VIA1_iA6_SCRNvPage2,
|
||||
#define SCRNvPage2 (Wires[Wire_VIA1_iA6_SCRNvPage2])
|
||||
#define VIA1_iA6 (Wires[Wire_VIA1_iA6_SCRNvPage2])
|
||||
|
||||
Wire_VIA1_iA5_IWMvSel,
|
||||
#define IWMvSel (Wires[Wire_VIA1_iA5_IWMvSel])
|
||||
#define VIA1_iA5 (Wires[Wire_VIA1_iA5_IWMvSel])
|
||||
|
||||
Wire_VIA1_iA7_SCCwaitrq,
|
||||
#define SCCwaitrq (Wires[Wire_VIA1_iA7_SCCwaitrq])
|
||||
#define VIA1_iA7 (Wires[Wire_VIA1_iA7_SCCwaitrq])
|
||||
|
||||
Wire_VIA1_iB0_RTCdataLine,
|
||||
#define RTCdataLine (Wires[Wire_VIA1_iB0_RTCdataLine])
|
||||
#define VIA1_iB0 (Wires[Wire_VIA1_iB0_RTCdataLine])
|
||||
#define VIA1_iB0_ChangeNtfy RTCdataLine_ChangeNtfy
|
||||
|
||||
Wire_VIA1_iB1_RTCclock,
|
||||
#define RTCclock (Wires[Wire_VIA1_iB1_RTCclock])
|
||||
#define VIA1_iB1 (Wires[Wire_VIA1_iB1_RTCclock])
|
||||
#define VIA1_iB1_ChangeNtfy RTCclock_ChangeNtfy
|
||||
|
||||
Wire_VIA1_iB2_RTCunEnabled,
|
||||
#define RTCunEnabled (Wires[Wire_VIA1_iB2_RTCunEnabled])
|
||||
#define VIA1_iB2 (Wires[Wire_VIA1_iB2_RTCunEnabled])
|
||||
#define VIA1_iB2_ChangeNtfy RTCunEnabled_ChangeNtfy
|
||||
|
||||
Wire_VIA1_iA3_SoundBuffer,
|
||||
#define SoundBuffer (Wires[Wire_VIA1_iA3_SoundBuffer])
|
||||
#define VIA1_iA3 (Wires[Wire_VIA1_iA3_SoundBuffer])
|
||||
|
||||
Wire_VIA1_iB3_MouseBtnUp,
|
||||
#define MouseBtnUp (Wires[Wire_VIA1_iB3_MouseBtnUp])
|
||||
#define VIA1_iB3 (Wires[Wire_VIA1_iB3_MouseBtnUp])
|
||||
|
||||
Wire_VIA1_iB4_MouseX2,
|
||||
#define MouseX2 (Wires[Wire_VIA1_iB4_MouseX2])
|
||||
#define VIA1_iB4 (Wires[Wire_VIA1_iB4_MouseX2])
|
||||
|
||||
Wire_VIA1_iB5_MouseY2,
|
||||
#define MouseY2 (Wires[Wire_VIA1_iB5_MouseY2])
|
||||
#define VIA1_iB5 (Wires[Wire_VIA1_iB5_MouseY2])
|
||||
|
||||
Wire_VIA1_iCB2_KybdDat,
|
||||
#define VIA1_iCB2 (Wires[Wire_VIA1_iCB2_KybdDat])
|
||||
#define VIA1_iCB2_ChangeNtfy Kybd_DataLineChngNtfy
|
||||
|
||||
Wire_VIA1_iB6_SCRNbeamInVid,
|
||||
#define SCRNbeamInVid (Wires[Wire_VIA1_iB6_SCRNbeamInVid])
|
||||
#define VIA1_iB6 (Wires[Wire_VIA1_iB6_SCRNbeamInVid])
|
||||
|
||||
Wire_VIA1_iB7_SoundDisable,
|
||||
#define SoundDisable (Wires[Wire_VIA1_iB7_SoundDisable])
|
||||
#define VIA1_iB7 (Wires[Wire_VIA1_iB7_SoundDisable])
|
||||
|
||||
Wire_VIA1_InterruptRequest,
|
||||
#define VIA1_InterruptRequest (Wires[Wire_VIA1_InterruptRequest])
|
||||
#define VIA1_interruptChngNtfy VIAorSCCinterruptChngNtfy
|
||||
|
||||
Wire_SCCInterruptRequest,
|
||||
#define SCCInterruptRequest (Wires[Wire_SCCInterruptRequest])
|
||||
#define SCCinterruptChngNtfy VIAorSCCinterruptChngNtfy
|
||||
|
||||
kNumWires
|
||||
};
|
||||
|
||||
|
||||
/* VIA configuration */
|
||||
#define VIA1_ORA_FloatVal 0xFF
|
||||
#define VIA1_ORB_FloatVal 0xFF
|
||||
#define VIA1_ORA_CanIn 0x80
|
||||
#define VIA1_ORA_CanOut 0x7F
|
||||
#define VIA1_ORB_CanIn 0x79
|
||||
#define VIA1_ORB_CanOut 0x87
|
||||
#define VIA1_IER_Never0 (1 << 1)
|
||||
#define VIA1_IER_Never1 ((1 << 3) | (1 << 4))
|
||||
#define VIA1_CB2modesAllowed 0x01
|
||||
#define VIA1_CA2modesAllowed 0x01
|
||||
|
||||
#define Mouse_Enabled SCC_InterruptsEnabled
|
||||
|
||||
#define VIA1_iCA1_PulseNtfy VIA1_iCA1_Sixtieth_PulseNtfy
|
||||
#define Sixtieth_PulseNtfy VIA1_iCA1_Sixtieth_PulseNtfy
|
||||
|
||||
#define VIA1_iCA2_PulseNtfy VIA1_iCA2_RTC_OneSecond_PulseNtfy
|
||||
#define RTC_OneSecond_PulseNtfy VIA1_iCA2_RTC_OneSecond_PulseNtfy
|
||||
|
||||
#define GetSoundInvertTime VIA1_GetT1InvertTime
|
||||
|
||||
#define KYBD_ShiftInData VIA1_ShiftOutData
|
||||
#define KYBD_ShiftOutData VIA1_ShiftInData
|
||||
|
||||
#define kExtn_Block_Base 0x00F40000
|
||||
#define kExtn_ln2Spc 5
|
||||
|
||||
#define kROM_Base 0x00400000
|
||||
#define kROM_ln2Spc 20
|
||||
#if (CurEmMd == kEmMd_Plus)
|
||||
#include "MACPLUS.h"
|
||||
#elif (CurEmMd == kEmMd_II)
|
||||
#include "MACII.h"
|
||||
#endif
|
||||
|
||||
#define WantDisasm 0
|
||||
#define ExtraAbnormalReports 0
|
||||
|
@ -7,18 +7,16 @@
|
||||
you know what you're doing.
|
||||
*/
|
||||
|
||||
#define EmClassicKbrd 0
|
||||
#define EmADB 1
|
||||
#define EmRTC 1
|
||||
#define EmPMU 0
|
||||
#define EmVIA2 1
|
||||
//#define EmClassicKbrd 0
|
||||
//#define EmADB 1
|
||||
//#define EmRTC 1
|
||||
//#define EmPMU 0
|
||||
//#define EmVIA2 1
|
||||
#define Use68020 1
|
||||
#define EmFPU 1
|
||||
#define EmMMU 0
|
||||
#define EmASC 1
|
||||
|
||||
#define CurEmMd kEmMd_II
|
||||
|
||||
#define kMyClockMult 2
|
||||
|
||||
#define WantCycByPriOp 0
|
||||
@ -38,22 +36,6 @@
|
||||
#define EmVidCard 1
|
||||
#define kVidROM_Size 0x000800
|
||||
|
||||
#define MaxATTListN 20
|
||||
#define IncludeExtnPbufs 0
|
||||
#define IncludeExtnHostTextClipExchange 0
|
||||
|
||||
#define Sony_SupportDC42 1
|
||||
#define Sony_SupportTags 0
|
||||
#define Sony_WantChecksumsUpdated 0
|
||||
#define Sony_VerifyChecksums 0
|
||||
#define CaretBlinkTime 0x08
|
||||
#define SpeakerVol 0x07
|
||||
#define DoubleClickTime 0x08
|
||||
#define MenuBlink 0x03
|
||||
#define AutoKeyThresh 0x06
|
||||
#define AutoKeyRate 0x03
|
||||
|
||||
|
||||
/* the Wire variables are 1/0, not true/false */
|
||||
|
||||
enum {
|
||||
@ -232,6 +214,3 @@ enum {
|
||||
|
||||
#define kROM_Base 0x00800000
|
||||
#define kROM_ln2Spc 20
|
||||
|
||||
#define WantDisasm 0
|
||||
#define ExtraAbnormalReports 0
|
139
cfg/MACPLUS.h
Normal file
139
cfg/MACPLUS.h
Normal file
@ -0,0 +1,139 @@
|
||||
#define EmClassicKbrd 1
|
||||
#define EmADB 0
|
||||
#define EmRTC 1
|
||||
#define EmPMU 0
|
||||
#define EmVIA2 0
|
||||
#define Use68020 0
|
||||
#define EmFPU 0
|
||||
#define EmMMU 0
|
||||
#define EmASC 0
|
||||
|
||||
#define ClockMult 1
|
||||
|
||||
#define WantCycByPriOp 1
|
||||
#define WantCloserCyc 0
|
||||
|
||||
#define kRAMa_Size 0x00200000
|
||||
#define kRAMb_Size 0x00200000
|
||||
|
||||
#define IncludeVidMem 0
|
||||
#define EmVidCard 0
|
||||
|
||||
/* the Wire variables are 1/0, not true/false */
|
||||
|
||||
enum {
|
||||
|
||||
Wire_VIA1_iA0_SoundVolb0,
|
||||
#define SoundVolb0 (Wires[Wire_VIA1_iA0_SoundVolb0])
|
||||
#define VIA1_iA0 (Wires[Wire_VIA1_iA0_SoundVolb0])
|
||||
|
||||
Wire_VIA1_iA1_SoundVolb1,
|
||||
#define SoundVolb1 (Wires[Wire_VIA1_iA1_SoundVolb1])
|
||||
#define VIA1_iA1 (Wires[Wire_VIA1_iA1_SoundVolb1])
|
||||
|
||||
Wire_VIA1_iA2_SoundVolb2,
|
||||
#define SoundVolb2 (Wires[Wire_VIA1_iA2_SoundVolb2])
|
||||
#define VIA1_iA2 (Wires[Wire_VIA1_iA2_SoundVolb2])
|
||||
|
||||
Wire_VIA1_iA4_MemOverlay,
|
||||
#define MemOverlay (Wires[Wire_VIA1_iA4_MemOverlay])
|
||||
#define VIA1_iA4 (Wires[Wire_VIA1_iA4_MemOverlay])
|
||||
#define VIA1_iA4_ChangeNtfy MemOverlay_ChangeNtfy
|
||||
|
||||
Wire_VIA1_iA6_SCRNvPage2,
|
||||
#define SCRNvPage2 (Wires[Wire_VIA1_iA6_SCRNvPage2])
|
||||
#define VIA1_iA6 (Wires[Wire_VIA1_iA6_SCRNvPage2])
|
||||
|
||||
Wire_VIA1_iA5_IWMvSel,
|
||||
#define IWMvSel (Wires[Wire_VIA1_iA5_IWMvSel])
|
||||
#define VIA1_iA5 (Wires[Wire_VIA1_iA5_IWMvSel])
|
||||
|
||||
Wire_VIA1_iA7_SCCwaitrq,
|
||||
#define SCCwaitrq (Wires[Wire_VIA1_iA7_SCCwaitrq])
|
||||
#define VIA1_iA7 (Wires[Wire_VIA1_iA7_SCCwaitrq])
|
||||
|
||||
Wire_VIA1_iB0_RTCdataLine,
|
||||
#define RTCdataLine (Wires[Wire_VIA1_iB0_RTCdataLine])
|
||||
#define VIA1_iB0 (Wires[Wire_VIA1_iB0_RTCdataLine])
|
||||
#define VIA1_iB0_ChangeNtfy RTCdataLine_ChangeNtfy
|
||||
|
||||
Wire_VIA1_iB1_RTCclock,
|
||||
#define RTCclock (Wires[Wire_VIA1_iB1_RTCclock])
|
||||
#define VIA1_iB1 (Wires[Wire_VIA1_iB1_RTCclock])
|
||||
#define VIA1_iB1_ChangeNtfy RTCclock_ChangeNtfy
|
||||
|
||||
Wire_VIA1_iB2_RTCunEnabled,
|
||||
#define RTCunEnabled (Wires[Wire_VIA1_iB2_RTCunEnabled])
|
||||
#define VIA1_iB2 (Wires[Wire_VIA1_iB2_RTCunEnabled])
|
||||
#define VIA1_iB2_ChangeNtfy RTCunEnabled_ChangeNtfy
|
||||
|
||||
Wire_VIA1_iA3_SoundBuffer,
|
||||
#define SoundBuffer (Wires[Wire_VIA1_iA3_SoundBuffer])
|
||||
#define VIA1_iA3 (Wires[Wire_VIA1_iA3_SoundBuffer])
|
||||
|
||||
Wire_VIA1_iB3_MouseBtnUp,
|
||||
#define MouseBtnUp (Wires[Wire_VIA1_iB3_MouseBtnUp])
|
||||
#define VIA1_iB3 (Wires[Wire_VIA1_iB3_MouseBtnUp])
|
||||
|
||||
Wire_VIA1_iB4_MouseX2,
|
||||
#define MouseX2 (Wires[Wire_VIA1_iB4_MouseX2])
|
||||
#define VIA1_iB4 (Wires[Wire_VIA1_iB4_MouseX2])
|
||||
|
||||
Wire_VIA1_iB5_MouseY2,
|
||||
#define MouseY2 (Wires[Wire_VIA1_iB5_MouseY2])
|
||||
#define VIA1_iB5 (Wires[Wire_VIA1_iB5_MouseY2])
|
||||
|
||||
Wire_VIA1_iCB2_KybdDat,
|
||||
#define VIA1_iCB2 (Wires[Wire_VIA1_iCB2_KybdDat])
|
||||
#define VIA1_iCB2_ChangeNtfy Kybd_DataLineChngNtfy
|
||||
|
||||
Wire_VIA1_iB6_SCRNbeamInVid,
|
||||
#define SCRNbeamInVid (Wires[Wire_VIA1_iB6_SCRNbeamInVid])
|
||||
#define VIA1_iB6 (Wires[Wire_VIA1_iB6_SCRNbeamInVid])
|
||||
|
||||
Wire_VIA1_iB7_SoundDisable,
|
||||
#define SoundDisable (Wires[Wire_VIA1_iB7_SoundDisable])
|
||||
#define VIA1_iB7 (Wires[Wire_VIA1_iB7_SoundDisable])
|
||||
|
||||
Wire_VIA1_InterruptRequest,
|
||||
#define VIA1_InterruptRequest (Wires[Wire_VIA1_InterruptRequest])
|
||||
#define VIA1_interruptChngNtfy VIAorSCCinterruptChngNtfy
|
||||
|
||||
Wire_SCCInterruptRequest,
|
||||
#define SCCInterruptRequest (Wires[Wire_SCCInterruptRequest])
|
||||
#define SCCinterruptChngNtfy VIAorSCCinterruptChngNtfy
|
||||
|
||||
kNumWires
|
||||
};
|
||||
|
||||
|
||||
/* VIA configuration */
|
||||
#define VIA1_ORA_FloatVal 0xFF
|
||||
#define VIA1_ORB_FloatVal 0xFF
|
||||
#define VIA1_ORA_CanIn 0x80
|
||||
#define VIA1_ORA_CanOut 0x7F
|
||||
#define VIA1_ORB_CanIn 0x79
|
||||
#define VIA1_ORB_CanOut 0x87
|
||||
#define VIA1_IER_Never0 (1 << 1)
|
||||
#define VIA1_IER_Never1 ((1 << 3) | (1 << 4))
|
||||
#define VIA1_CB2modesAllowed 0x01
|
||||
#define VIA1_CA2modesAllowed 0x01
|
||||
|
||||
#define Mouse_Enabled SCC_InterruptsEnabled
|
||||
|
||||
#define VIA1_iCA1_PulseNtfy VIA1_iCA1_Sixtieth_PulseNtfy
|
||||
#define Sixtieth_PulseNtfy VIA1_iCA1_Sixtieth_PulseNtfy
|
||||
|
||||
#define VIA1_iCA2_PulseNtfy VIA1_iCA2_RTC_OneSecond_PulseNtfy
|
||||
#define RTC_OneSecond_PulseNtfy VIA1_iCA2_RTC_OneSecond_PulseNtfy
|
||||
|
||||
#define GetSoundInvertTime VIA1_GetT1InvertTime
|
||||
|
||||
#define KYBD_ShiftInData VIA1_ShiftOutData
|
||||
#define KYBD_ShiftOutData VIA1_ShiftInData
|
||||
|
||||
#define kExtn_Block_Base 0x00F40000
|
||||
#define kExtn_ln2Spc 5
|
||||
|
||||
#define kROM_Base 0x00400000
|
||||
#define kROM_ln2Spc 20
|
@ -18,11 +18,13 @@
|
||||
Apple Desktop Bus EMulated DEVice
|
||||
*/
|
||||
|
||||
#if EmADB
|
||||
|
||||
#ifndef AllFiles
|
||||
#include "SYSDEPNS.h"
|
||||
#include "UI/MYOSGLUE.h"
|
||||
#include "EMCONFIG.h"
|
||||
#include "SYSDEPNS.h"
|
||||
#include "GLOBGLUE.h"
|
||||
#include "UI/MYOSGLUE.h"
|
||||
#endif
|
||||
|
||||
#include "HW/ADB/ADBEMDEV.h"
|
||||
@ -212,3 +214,5 @@ GLOBALPROC ADB_Update(void)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#endif
|
||||
|
@ -36,9 +36,10 @@
|
||||
#include "incbin/incbin.h"
|
||||
#include "PATCHES/ROMEMDEV.h"
|
||||
|
||||
#define UseSonyPatch \
|
||||
// Temporarily disable due to CMake errors
|
||||
/*#define UseSonyPatch \
|
||||
((CurEmMd <= kEmMd_Classic) || (CurEmMd == kEmMd_II) \
|
||||
|| (CurEmMd == kEmMd_IIx))
|
||||
|| (CurEmMd == kEmMd_IIx))*/
|
||||
|
||||
#ifndef UseLargeScreenHack
|
||||
#define UseLargeScreenHack 0
|
||||
|
17
src/UI/_deprecated/README.md
Normal file
17
src/UI/_deprecated/README.md
Normal file
@ -0,0 +1,17 @@
|
||||
# Deprecated targets
|
||||
|
||||
Targets that I'm not in a position to maintain right now. Perhaps they'll come
|
||||
back from the dead one day. (MACOSX especially; I don't own any computer that
|
||||
runs that at the moment...)
|
||||
|
||||
Do not expect any of these targets to build.
|
||||
|
||||
- `MACOSX`: macOS / Mac OS X
|
||||
- `NDS`: Nintendo DS
|
||||
- `OLDMAC`: Classic Mac OS
|
||||
- `UNIX`: raw X11
|
||||
- `XPLAT/OSGLUGTK.c`: GTK (Linux)
|
||||
- `XPLAT/OSGLUSDL.c`: SDL 1.2 (or lower?); might be useful for archaic systems
|
||||
|
||||
While compatibility with old/esoteric operating systems is neat, the primary
|
||||
focus will be on SDL2 moving forwards.
|
Loading…
Reference in New Issue
Block a user