play bbs:files/samples/edit.snd    ; this warns me that someone is using the
copy dh0:c/FK ram:t                ; function, so I can stop anything I'm
cd BBS:Txt/CD2                     ; doing, so the Ed window doesn't mess up
edible BBS:Doors/ProgReq.lo4 temp1.txt  ; debinaryizes the request
task 10
wait 3

run Ed temp1.txt                   ; uses Ed on the request
wait 2
ram:t/fk 0 esc
ram:t/fk 0 d
ram:t/fk 0 return                  ; getting rid of leftover ANSI garbage
wait 1
ram:t/fk 0 esc
ram:t/fk 0 d
ram:t/fk 0 return
wait 1
ram:t/fk 0 esc
ram:t/fk 0 d
ram:t/fk 0 return
wait 1
ram:t/fk 0 esc
ram:t/fk 0 f
ram:t/fk 0 '
ram:t/fk 0 :                       ; looking for the ":" in front of the file
ram:t/fk 0 return
ram:t/fk 0 right
ram:t/fk 0 right

ram:t/fk 0 backspace          ; this backspaces over the requester's name
ram:t/fk 0 backspace
ram:t/fk 0 backspace
ram:t/fk 0 backspace
ram:t/fk 0 backspace
ram:t/fk 0 backspace
ram:t/fk 0 backspace
ram:t/fk 0 backspace
ram:t/fk 0 backspace
ram:t/fk 0 backspace
ram:t/fk 0 backspace
ram:t/fk 0 backspace
ram:t/fk 0 backspace
ram:t/fk 0 backspace
ram:t/fk 0 backspace
ram:t/fk 0 backspace
ram:t/fk 0 backspace
ram:t/fk 0 backspace
ram:t/fk 0 backspace
ram:t/fk 0 backspace
ram:t/fk 0 backspace
ram:t/fk 0 backspace
ram:t/fk 0 backspace
ram:t/fk 0 backspace
ram:t/fk 0 backspace
ram:t/fk 0 backspace
ram:t/fk 0 backspace
ram:t/fk 0 backspace
ram:t/fk 0 backspace
ram:t/fk 0 backspace
ram:t/fk 0 backspace
ram:t/fk 0 backspace
ram:t/fk 0 backspace
ram:t/fk 0 backspace
ram:t/fk 0 backspace
ram:t/fk 0 backspace
ram:t/fk 0 backspace
ram:t/fk 0 backspace
ram:t/fk 0 backspace
ram:t/fk 0 backspace
ram:t/fk 0 backspace
ram:t/fk 0 backspace
ram:t/fk 0 backspace
ram:t/fk 0 backspace
ram:t/fk 0 backspace

ram:t/fk 0 c                       ;injecting the command line in front of
ram:t/fk 0 o                       ;the requested file
ram:t/fk 0 p
ram:t/fk 0 y
ram:t/fk 0 space
ram:t/fk 0 C
ram:t/fk 0 D
ram:t/fk 0 0
ram:t/fk 0 :
ram:t/fk 0 B
ram:t/fk 0 B
ram:t/fk 0 S
ram:t/fk 0 /
ram:t/fk 0 A
ram:t/fk 0 L
ram:t/fk 0 i
ram:t/fk 0 b
ram:t/fk 0 /
ram:t/fk 0 #
ram:t/fk 0 "?"
ram:t/fk 0 /
ram:t/fk 0 #
ram:t/fk 0 "?"
ram:t/fk 0 /
ram:t/fk 0 lshift right
ram:t/fk 0 space 
ram:t/fk 0 F                       ; puts the destination directory after it
ram:t/fk 0 i
ram:t/fk 0 s
ram:t/fk 0 h
ram:t/fk 0 :
ram:t/fk 0 return


ram:t/fk 0 down
ram:t/fk 0 lshift left

ram:t/fk 0 esc                     ; clean up some more garbage
ram:t/fk 0 d
ram:t/fk 0 return
wait 1
ram:t/fk 0 esc
ram:t/fk 0 d
ram:t/fk 0 return
wait 1
ram:t/fk 0 esc
ram:t/fk 0 d
ram:t/fk 0 return
wait 1
ram:t/fk 0 esc
ram:t/fk 0 d
ram:t/fk 0 return
wait 1

ram:t/fk 0 esc
ram:t/fk 0 x
ram:t/fk 0 return                  ; save file
wait 1
task 0
execute temp1.txt                  ; execute file

delete BBS:Doors/progreq.lo4 quiet ; delete old request
delete temp1.txt quiet
