From e8daea9f566272679367259ddf8341be6670fcb7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jesu=CC=81s=20A=2E=20A=CC=81lvarez?= Date: Wed, 25 May 2016 20:49:56 +0200 Subject: [PATCH] add Interrupt and Reset buttons --- Mini vMac/AppDelegate.h | 3 +++ Mini vMac/AppDelegate.m | 10 ++++++++ .../Interrupt.imageset/Contents.json | 23 ++++++++++++++++++ .../Interrupt.imageset/interrupt.png | Bin 0 -> 1726 bytes .../Interrupt.imageset/interrupt@2x.png | Bin 0 -> 2525 bytes .../Interrupt.imageset/interrupt@3x.png | Bin 0 -> 3556 bytes .../Reset.imageset/Contents.json | 23 ++++++++++++++++++ .../Assets.xcassets/Reset.imageset/reset.png | Bin 0 -> 1622 bytes .../Reset.imageset/reset@2x.png | Bin 0 -> 2315 bytes .../Reset.imageset/reset@3x.png | Bin 0 -> 3108 bytes Mini vMac/Base.lproj/Main.storyboard | 14 +++++++++++ Mini vMac/InsertDiskViewController.h | 2 ++ Mini vMac/InsertDiskViewController.m | 11 +++++++++ Mini vMac/MYOSGLUE.m | 8 ++++++ 14 files changed, 94 insertions(+) create mode 100644 Mini vMac/Assets.xcassets/Interrupt.imageset/Contents.json create mode 100644 Mini vMac/Assets.xcassets/Interrupt.imageset/interrupt.png create mode 100644 Mini vMac/Assets.xcassets/Interrupt.imageset/interrupt@2x.png create mode 100644 Mini vMac/Assets.xcassets/Interrupt.imageset/interrupt@3x.png create mode 100644 Mini vMac/Assets.xcassets/Reset.imageset/Contents.json create mode 100644 Mini vMac/Assets.xcassets/Reset.imageset/reset.png create mode 100644 Mini vMac/Assets.xcassets/Reset.imageset/reset@2x.png create mode 100644 Mini vMac/Assets.xcassets/Reset.imageset/reset@3x.png diff --git a/Mini vMac/AppDelegate.h b/Mini vMac/AppDelegate.h index dc99f54..d020213 100644 --- a/Mini vMac/AppDelegate.h +++ b/Mini vMac/AppDelegate.h @@ -33,5 +33,8 @@ extern NSString * const MNVMDidEjectDiskNotification; - (BOOL)insertDisk:(NSString*)path; - (BOOL)isDiskInserted:(NSString*)path; +- (void)macInterrupt; +- (void)macReset; + @end diff --git a/Mini vMac/AppDelegate.m b/Mini vMac/AppDelegate.m index 70184a8..1477c1d 100644 --- a/Mini vMac/AppDelegate.m +++ b/Mini vMac/AppDelegate.m @@ -23,6 +23,8 @@ IMPORTFUNC blnr Sony_Insert1(NSString *filePath, blnr silentfail); IMPORTFUNC blnr Sony_IsInserted(NSString *filePath); EXPORTVAR(ui3b,SpeedValue); IMPORTPROC SetKeyState(int key, blnr down); +IMPORTPROC MacInterrupt(); +IMPORTPROC MacReset(); static AppDelegate *sharedAppDelegate = nil; NSString * const MNVMDidInsertDiskNotification = @"MNVMDidInsertDisk"; @@ -266,6 +268,14 @@ NSString * const MNVMDidEjectDiskNotification = @"MNVMDidEjectDisk"; SetMouseButton(down); } +- (void)macInterrupt { + MacInterrupt(); +} + +-(void)macReset { + MacReset(); +} + #pragma mark - Keyboard - (int)translateScanCode:(int)scancode { diff --git a/Mini vMac/Assets.xcassets/Interrupt.imageset/Contents.json b/Mini vMac/Assets.xcassets/Interrupt.imageset/Contents.json new file mode 100644 index 0000000..d7d85a2 --- /dev/null +++ b/Mini vMac/Assets.xcassets/Interrupt.imageset/Contents.json @@ -0,0 +1,23 @@ +{ + "images" : [ + { + "idiom" : "universal", + "filename" : "interrupt.png", + "scale" : "1x" + }, + { + "idiom" : "universal", + "filename" : "interrupt@2x.png", + "scale" : "2x" + }, + { + "idiom" : "universal", + "filename" : "interrupt@3x.png", + "scale" : "3x" + } + ], + "info" : { + "version" : 1, + "author" : "xcode" + } +} \ No newline at end of file diff --git a/Mini vMac/Assets.xcassets/Interrupt.imageset/interrupt.png b/Mini vMac/Assets.xcassets/Interrupt.imageset/interrupt.png new file mode 100644 index 0000000000000000000000000000000000000000..ed47486e3868a3a9b27872b541cccced13439853 GIT binary patch literal 1726 zcmV;v20{6WP)4Tx062|}Rb6NtRTMtEb7vzY&QokOg>Hg1+lHrgWS zWcKdPn90sKGrRqvPeo9CG3uKX#J{(IASm?@+di}}l?o-=)F3E6wD^Ni=!>T7nL9I? zX}YoAW$t|Qo$sD|?zw001?ah|SeB6#0T!CBEf+H4bBB+JJu8rehoBb*p;u8ID_yBf z0ya+zcePvJL&AGs+11_tpRKn>9TgyPA7ZoSs0)aX0r00)%XR^J`jH<$>RKN5V(7Oq zK*TS4xZz{h!*f1C3ECFkK$#7nA@pGN!$;%jYvwjAKwmYb0gKL(K8 z-kPtb5${A?tlI~wzMrJ6wTdBr=Y%%%EaEMQ&o}4FQ^DA)s*}Z>!FI&AHCpoWI|RUq zx?7s@$8!5^Q=anY%X@i5{QA6kNcMelpE>R6eCYFpmMsVTrI(b06~u#xf1yS} z_UGdMvD``!0~u->P=lA4?YN`hilQ|3tHka)7T{2CGqw zjZfMwx$5irQN_*|e4l)UHmiYuz74Yp1t^#>hrJ3-SOXDcC_o0^7T9R1gAN8V6s;5) zieI5-7aQlmJn}lUna#nz!j%5V$X|o`xX!dHWQRV27P1=rj;t2bW$~+pTw@bIek?Zv zKPDL<64`^#UNTAck#RBsB6*5DP4<%UA_FqU$I>2EH_cM;u)Q~SI+rg`Rn{L_AC5qq~L$#SMj%U z$6Cz0vP{G5Y*=%5RT^yu;}-DInZ=349rJPVM6C3K^oO)8y(fJr{l>k`ead~!ea?NsT>_Ci%bnxC;Vy6=b6>{xYV#Ue-+LB$ z7`JEXmTRm^AtP)R9u{)KHsMiWGV&)32xCG~*nyU<>-!d;FP=Re4r3qYr~6#KE>;1F z`>_J_P5xC?ROxV(DIHdCO*p$HRQI@7^PwV@Pvuf+5K}u-6REM(K@W$s zrgorh0{i?O)v0c>QtHxU-hBdD(>iYJ4b2sIOVX2K8m~4gmYVA5h^QEb$V`rCQ-|7Z zS{nuL-t>?3n=-o(6I(7vocj#GzCZEo`!3>+v;dYIfPu#&ZWzzX2i^rZ^Mu;6+rb@? zNPG+6)c5T6zxpzGe*M(x+{AON=PiJ>H#?ob-|uwRK0yDg0B4PV0id6JRZw95ZvX%S zY)M2xR7efQmp^M1K^TWGMh}Z1TF6}a?4s&SFtNGJ**b+k5q{G4 z2*#CTjS-7&&ektzTNu%O>R#E(NP9}vF^)CHsLW-~+)y^vi}btyo@z{#UdK2#rn9N; z)9d@ROtCx+$GMTIIcDe)CtUyfPX?zJD^7`IGOdB+=!b9+jq)a_JeD0Y6SjIGVr8IcwPEGz6sdSfjI@TD*s!ci=<_Q&#K3C%WU`I_^?^qx7 zgK=H$8Th&4#$N-EybiPjmTj|7kKPO%TdHComl{Hc-$=`_1Ww@`6oF4DH~y#XF9$Av U$$Y5W>i_@%07*qoM6N<$f|o;3WB>pF literal 0 HcmV?d00001 diff --git a/Mini vMac/Assets.xcassets/Interrupt.imageset/interrupt@2x.png b/Mini vMac/Assets.xcassets/Interrupt.imageset/interrupt@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..1847f1e2365ee2c1c55169d94a9d7c833ed14a96 GIT binary patch literal 2525 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 literal 0 HcmV?d00001 diff --git a/Mini vMac/Assets.xcassets/Interrupt.imageset/interrupt@3x.png b/Mini vMac/Assets.xcassets/Interrupt.imageset/interrupt@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..25d061e557e3b52ed0b4cf5b27593ac67a5d63f7 GIT binary patch literal 3556 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 literal 0 HcmV?d00001 diff --git a/Mini vMac/Assets.xcassets/Reset.imageset/reset@3x.png b/Mini vMac/Assets.xcassets/Reset.imageset/reset@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..8f9ad64d67c7fd36e29a6617d9522353280f3666 GIT binary patch literal 3108 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 + + + + + + + + + + + + @@ -267,6 +279,8 @@ + + diff --git a/Mini vMac/InsertDiskViewController.h b/Mini vMac/InsertDiskViewController.h index 4348838..e975d46 100644 --- a/Mini vMac/InsertDiskViewController.h +++ b/Mini vMac/InsertDiskViewController.h @@ -12,5 +12,7 @@ - (IBAction)showSettings:(id)sender; - (IBAction)dismiss:(id)sender; +- (IBAction)macInterrupt:(id)sender; +- (IBAction)macReset:(id)sender; @end diff --git a/Mini vMac/InsertDiskViewController.m b/Mini vMac/InsertDiskViewController.m index 376ad03..d48aedc 100644 --- a/Mini vMac/InsertDiskViewController.m +++ b/Mini vMac/InsertDiskViewController.m @@ -77,6 +77,8 @@ [self.tableView reloadData]; } +#pragma mark - Button Actions + - (void)showSettings:(id)sender { [[AppDelegate sharedInstance] showSettings:sender]; } @@ -85,6 +87,15 @@ [self dismissViewControllerAnimated:YES completion:nil]; } +- (void)macInterrupt:(id)sender { + [self dismiss:sender]; + [[AppDelegate sharedInstance] macInterrupt]; +} + +- (void)macReset:(id)sender { + [[AppDelegate sharedInstance] macReset]; +} + #pragma mark - Table view data source - (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView { diff --git a/Mini vMac/MYOSGLUE.m b/Mini vMac/MYOSGLUE.m index a4325d2..068d1c1 100644 --- a/Mini vMac/MYOSGLUE.m +++ b/Mini vMac/MYOSGLUE.m @@ -1687,3 +1687,11 @@ GLOBALPROC RunEmulator(void) { } UnInitOSGLU(); } + +GLOBALPROC MacInterrupt(void) { + WantMacInterrupt = trueblnr; +} + +GLOBALPROC MacReset(void) { + WantMacReset = trueblnr; +} \ No newline at end of file