/* Menu events - Check ~Sets */
Arg window self


/* remove the trailing "/" from the mamedir var because DIRECTORY doesn't like it */
    mamedirlen=length(mamedir)  
    chmamedir=left(mamedir,mamedirlen-1)

/********** set check on all sets  ***********/
setchk=inipath||'\setchk.txt'
setchkbat=inipath||'\setchk.bat'
listcall=mameprog||' * -verifysets >'setchk
listcall2=mameprog||' * -verifysets >>'setchk
gomamedir='cd '||chmamedir
altromdirlen=length(altromdir)
if altromdirlen > 0 then
  do  
    chaltromdir=left(altromdir,altromdirlen-1)
    goaltromdir='cd '||chaltromdir
  end
  
exitcall=STREAM(xitpath,'C','QUERY EXISTS')

CALL LINEOUT romchkbat,mamedrive,1
CALL LINEOUT romchkbat,gomamedir 
CALL LINEOUT romchkbat,listcall
if altromdirlen > 0 then
  do
    CALL LINEOUT romchkbat,altromdrive
    CALL LINEOUT romchkbat,goaltromdir 
    CALL LINEOUT romchkbat,listcall2
  end
CALL LINEOUT romchkbat,xit
rc=stream(romchkbat,'c','close')
romchkrun='/C /F /WIN 'romchkbat
/* run the batchfile to do ROM checking */
Start romchkrun

DO UNTIL LENGTH(exitcall) > 0
  call SysSleep 1
  exitcall=STREAM(xitpath,'C','QUERY EXISTS')
END
rc=SysFileDelete(exitfile)
CALL VpWindow window,'DISABLESTDIO'
romchkepm='/F /PM e.exe '||romchk
Start romchkepm
CALL VpWindow window,'ENABLESTDIO'

rc=SysFileDelete(romchkbat)