2016-09-01 00:43:29 +00:00
|
|
|
//
|
|
|
|
// CSStaticAnalyser.h
|
|
|
|
// Clock Signal
|
|
|
|
//
|
|
|
|
// Created by Thomas Harte on 31/08/2016.
|
|
|
|
// Copyright © 2016 Thomas Harte. All rights reserved.
|
|
|
|
//
|
|
|
|
|
|
|
|
#import <Foundation/Foundation.h>
|
|
|
|
|
|
|
|
@class CSMachine;
|
|
|
|
|
2018-05-03 23:37:32 +00:00
|
|
|
typedef NS_ENUM(NSInteger, CSMachineAppleIIModel) {
|
|
|
|
CSMachineAppleIIModelAppleII,
|
|
|
|
CSMachineAppleIIModelAppleIIPlus
|
|
|
|
};
|
|
|
|
|
|
|
|
typedef NS_ENUM(NSInteger, CSMachineAppleIIDiskController) {
|
|
|
|
CSMachineAppleIIDiskControllerNone,
|
|
|
|
CSMachineAppleIIDiskControllerSixteenSector,
|
|
|
|
CSMachineAppleIIDiskControllerThirteenSector
|
|
|
|
};
|
|
|
|
|
2018-04-03 02:42:41 +00:00
|
|
|
typedef NS_ENUM(NSInteger, CSMachineCPCModel) {
|
|
|
|
CSMachineCPCModel464,
|
|
|
|
CSMachineCPCModel664,
|
|
|
|
CSMachineCPCModel6128
|
|
|
|
};
|
|
|
|
|
|
|
|
typedef NS_ENUM(NSInteger, CSMachineOricModel) {
|
|
|
|
CSMachineOricModelOric1,
|
2018-05-09 02:05:43 +00:00
|
|
|
CSMachineOricModelOricAtmos,
|
|
|
|
CSMachineOricModelPravetz
|
|
|
|
};
|
|
|
|
|
|
|
|
typedef NS_ENUM(NSInteger, CSMachineOricDiskInterface) {
|
|
|
|
CSMachineOricDiskInterfaceNone,
|
|
|
|
CSMachineOricDiskInterfaceMicrodisc,
|
|
|
|
CSMachineOricDiskInterfacePravetz
|
2018-04-03 02:42:41 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
typedef NS_ENUM(NSInteger, CSMachineVic20Region) {
|
|
|
|
CSMachineVic20RegionAmerican,
|
|
|
|
CSMachineVic20RegionEuropean,
|
|
|
|
CSMachineVic20RegionDanish,
|
|
|
|
CSMachineVic20RegionSwedish,
|
|
|
|
CSMachineVic20RegionJapanese,
|
|
|
|
};
|
|
|
|
|
|
|
|
typedef int Kilobytes;
|
|
|
|
|
2016-09-01 00:43:29 +00:00
|
|
|
@interface CSStaticAnalyser : NSObject
|
|
|
|
|
|
|
|
- (instancetype)initWithFileAtURL:(NSURL *)url;
|
|
|
|
|
2018-04-03 02:42:41 +00:00
|
|
|
- (instancetype)initWithElectronDFS:(BOOL)dfs adfs:(BOOL)adfs;
|
|
|
|
- (instancetype)initWithAmstradCPCModel:(CSMachineCPCModel)model;
|
|
|
|
- (instancetype)initWithMSXHasDiskDrive:(BOOL)hasDiskDrive;
|
2018-05-09 02:05:43 +00:00
|
|
|
- (instancetype)initWithOricModel:(CSMachineOricModel)model diskInterface:(CSMachineOricDiskInterface)diskInterface;
|
2018-04-03 02:42:41 +00:00
|
|
|
- (instancetype)initWithVic20Region:(CSMachineVic20Region)region memorySize:(Kilobytes)memorySize hasC1540:(BOOL)hasC1540;
|
|
|
|
- (instancetype)initWithZX80MemorySize:(Kilobytes)memorySize useZX81ROM:(BOOL)useZX81ROM;
|
|
|
|
- (instancetype)initWithZX81MemorySize:(Kilobytes)memorySize;
|
2018-05-03 23:37:32 +00:00
|
|
|
- (instancetype)initWithAppleIIModel:(CSMachineAppleIIModel)model diskController:(CSMachineAppleIIDiskController)diskController;
|
2018-04-03 02:42:41 +00:00
|
|
|
|
2016-10-02 20:31:50 +00:00
|
|
|
@property(nonatomic, readonly) NSString *optionsPanelNibName;
|
2016-09-13 02:15:38 +00:00
|
|
|
@property(nonatomic, readonly) NSString *displayName;
|
2016-10-02 20:31:50 +00:00
|
|
|
|
2016-09-01 00:43:29 +00:00
|
|
|
@end
|
2017-08-17 15:00:08 +00:00
|
|
|
|
|
|
|
@interface CSMediaSet : NSObject
|
|
|
|
|
|
|
|
- (instancetype)initWithFileAtURL:(NSURL *)url;
|
|
|
|
- (void)applyToMachine:(CSMachine *)machine;
|
|
|
|
|
|
|
|
@end
|