Permalink
Find file Copy path
Fetching contributors…
Cannot retrieve contributors at this time
99 lines (83 sloc) 2.33 KB
on run argv
set my_path to (system attribute "PWD") & "/"
set my_disk to item 1 of argv
set my_screen1 to item 2 of argv
set my_timeout1 to item 3 of argv
set my_screen2 to item 4 of argv
set my_timeout2 to item 5 of argv
set my_down to item 6 of argv as number
set my_demo to item 7 of argv as number
tell application "Virtual ]["
activate
-- may need delay for this error: execution error: Virtual ][ got an error: Connection is invalid. (-609)
delay 1.5
-- Close all open machines
close every machine saving no
-- Create a new (AppleIIe)
set theMachine to (make new AppleIIe)
tell theMachine
-- Change to a color screen
set monochrome screen to false
set scanlines to true
set speaker volume to 0.50
-- load disk
insert my_path & my_disk into device "S6D1"
-- splash page
try
with timeout of my_timeout1 seconds
waiting until screen equals imagefile POSIX path of (my_path & my_screen1)
end timeout
on error
return "ERROR: TIMEOUT: Virtual ][ screen != " & my_screen1
end try
-- full speed ahead
if (my_demo = 0) then
set speed to maximum
end if
-- main screen
try
with timeout of my_timeout2 seconds
waiting until screen equals imagefile POSIX path of (my_path & my_screen2)
end timeout
on error
return "ERROR: TIMEOUT: Virtual ][ screen != " & my_screen2
end try
-- normal speed
set speed to regular
-- down arrow my_down times and return
repeat my_down times
type key down arrow
delay 0.03
end repeat
delay 0.5
type line ""
delay 1.0
-- get qr code
snap screen picture to POSIX path of (my_path & "quick.tiff") format tiff
-- get audio
do shell script "./decodeanddownload.sh quick.tiff"
set my_audiotime to the result as number
set my_audio to "quick.aif"
-- send audio
play my_path & my_audio on device "cassette recorder"
-- full speed ahead
if (my_demo = 0) then
-- delay to see post QR text loading screen
delay 1.0
set speed to maximum
-- will need to be ajusted based on speed of your mac
delay 1.5
-- normal speed
set speed to regular
end if
if (my_demo = 1) then
delay (my_audiotime + 1.0)
end if
-- eject tape
eject device "cassette recorder"
end tell
-- delay 0.5
-- close every machine saving no
-- quit
end tell
end run