2 * Copyright 2007, François Revol, revol@free.fr.
3 * Distributed under the terms of the MIT License.
5 * Copyright 2006, Ingo Weinhold <bonefish@cs.tu-berlin.de>.
6 * All rights reserved. Distributed under the terms of the MIT License.
9 #include <arch_platform.h>
13 #include <KernelExport.h>
15 #include <boot/kernel_args.h>
16 //#include <platform/openfirmware/openfirmware.h>
17 #include <real_time_clock.h>
18 #include <util/kernel_cpp.h>
21 static M68KPlatform
*sM68KPlatform
;
25 M68KPlatform::M68KPlatform(m68k_platform_type platformType
)
26 : fPlatformType(platformType
)
31 M68KPlatform::~M68KPlatform()
37 M68KPlatform::Default()
47 arch_platform_init(struct kernel_args
*kernelArgs
)
49 // only Atari supported for now
50 switch (kernelArgs
->arch_args
.platform
) {
52 case M68K_PLATFORM_AMIGA
:
53 sM68KPlatform
= instanciate_m68k_platform_amiga();
56 case M68K_PLATFORM_ATARI
:
57 sM68KPlatform
= instanciate_m68k_platform_atari();
60 case M68K_PLATFORM_MAC
:
61 sM68KPlatform
= instanciate_m68k_platform_mac();
63 case M68K_PLATFORM_NEXT
:
64 sM68KPlatform
= instanciate_m68k_platform_next();
68 panic("unknown platform d\n", kernelArgs
->arch_args
.platform
);
71 return sM68KPlatform
->Init(kernelArgs
);
76 arch_platform_init_post_vm(struct kernel_args
*kernelArgs
)
78 return sM68KPlatform
->InitPostVM(kernelArgs
);
83 arch_platform_init_post_thread(struct kernel_args
*kernelArgs
)