- move atari platform subclass to platform/atari_m68k/
- fix exception handling, at least it builds now. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26089 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
@@ -13,7 +13,8 @@
|
||||
#endif // !_ASSEMBLER
|
||||
|
||||
|
||||
|
||||
#define SR_IP_MASK 0x0700
|
||||
#define SR_S 0x2000
|
||||
|
||||
#ifndef _ASSEMBLER
|
||||
|
||||
@@ -193,6 +194,7 @@ struct mc680x0_frame {
|
||||
};
|
||||
struct mc680x0_type_0_frame type_0;
|
||||
struct mc680x0_type_1_frame type_1;
|
||||
struct mc680x0_type_3_frame type_3;
|
||||
struct mc680x0_type_2_frame type_2;
|
||||
struct mc68040_type_7_frame type_7;
|
||||
struct mc680x0_type_9_frame type_9;
|
||||
|
||||
@@ -18,6 +18,8 @@ enum m68k_platform_type {
|
||||
|
||||
namespace BPrivate {
|
||||
|
||||
// implemented in src/system/kernel/arch/m68k/arch_platform.cpp
|
||||
|
||||
class M68KPlatform {
|
||||
public:
|
||||
M68KPlatform(m68k_platform_type platformType);
|
||||
@@ -30,6 +32,7 @@ public:
|
||||
virtual status_t Init(struct kernel_args *kernelArgs) = 0;
|
||||
virtual status_t InitSerialDebug(struct kernel_args *kernelArgs) = 0;
|
||||
virtual status_t InitPostVM(struct kernel_args *kernelArgs) = 0;
|
||||
virtual status_t InitPIC(struct kernel_args *kernelArgs) = 0;
|
||||
virtual status_t InitRTC(struct kernel_args *kernelArgs,
|
||||
struct real_time_data *data) = 0;
|
||||
virtual status_t InitTimer(struct kernel_args *kernelArgs) = 0;
|
||||
@@ -49,6 +52,44 @@ private:
|
||||
m68k_platform_type fPlatformType;
|
||||
};
|
||||
|
||||
|
||||
// #pragma mark - Amiga
|
||||
|
||||
|
||||
|
||||
// #pragma mark - Atari (Falcon)
|
||||
// implemented in src/system/kernel/platform/atari_m68k/platform.cpp
|
||||
|
||||
class M68KAtari : public M68KPlatform {
|
||||
public:
|
||||
M68KAtari();
|
||||
virtual ~M68KAtari();
|
||||
|
||||
virtual status_t Init(struct kernel_args *kernelArgs);
|
||||
virtual status_t InitSerialDebug(struct kernel_args *kernelArgs);
|
||||
virtual status_t InitPostVM(struct kernel_args *kernelArgs);
|
||||
virtual status_t InitPIC(struct kernel_args *kernelArgs);
|
||||
virtual status_t InitRTC(struct kernel_args *kernelArgs,
|
||||
struct real_time_data *data);
|
||||
virtual status_t InitTimer(struct kernel_args *kernelArgs);
|
||||
|
||||
virtual char SerialDebugGetChar();
|
||||
virtual void SerialDebugPutChar(char c);
|
||||
|
||||
virtual void SetHardwareRTC(uint32 seconds);
|
||||
virtual uint32 GetHardwareRTC();
|
||||
|
||||
virtual void SetHardwareTimer(bigtime_t timeout);
|
||||
virtual void ClearHardwareTimer(void);
|
||||
|
||||
virtual void ShutDown(bool reboot);
|
||||
|
||||
private:
|
||||
int fRTC;
|
||||
};
|
||||
|
||||
// #pragma mark - Mac
|
||||
|
||||
} // namespace BPrivate
|
||||
|
||||
using BPrivate::M68KPlatform;
|
||||
|
||||
Reference in New Issue
Block a user