diff --git a/cimp.bas b/cimp.bas index 3b60a71..8d0ee67 100644 --- a/cimp.bas +++ b/cimp.bas @@ -16,15 +16,12 @@ const key_up=1001 const key_down=1002 const key_right=1003 const key_left=1004 -dim slash as string -slash="/" + $if win then shell"chcp 65001 > nul" -slash="\" $end if redim file(0) as string -chdir _startdir$ if command$=""then print"please specify file to play." goto quit @@ -37,38 +34,21 @@ if ipc_status = 0 then ' --- CLIENT MODE --- dim cmd_msg as string - Select Case command$(1) - Case "--next" - cmd_msg = "NEXT" + if command$(1) = "--next" then + cmd_msg = "NEXT" + elseif command$(1) = "--prev" then + cmd_msg = "PREV" + elseif command$(1) = "-v" or command$(1) = "--volume" then + cmd_msg = "VOL:" + command$(2) + elseif command$(1) = "--add" then + cmd_msg = "ADD:" + get_abs_path(command$(2)) + elseif command$(1) = "--playlist" then + cmd_msg = "GET_PLAYLIST" + else + ' Default behavior: Resolve target file/playlist and replace active queue + cmd_msg = "PLAY:" + get_abs_path(command$(1)) + end if - Case "--prev" - cmd_msg = "PREV" - - Case "-v", "--volume" - cmd_msg = "VOL:" + command$(2) - - Case "--add" - For i = 2 To _commandcount - cmd_msg = "ADD:" + _cwd$ + slash + command$(i) - ipc_send_message cmd_msg - Next i - System - - Case "--playlist" - cmd_msg = "GET_PLAYLIST" - - Case Else - ' Default behavior: Resolve target file/playlist and replace active queue - cmd_msg = "PLAY:" + _cwd$ + slash + command$(1) - If _commandcount > 1 Then - For i = 2 To _commandcount - cmd_msg = "ADD:" + _cwd$ + slash + command$(i) - ipc_send_message cmd_msg - Next i - System - End If - End Select - ' Send instruction to the main player instance ipc_send_message cmd_msg @@ -108,6 +88,7 @@ end if echooff cursoroff +chdir _startdir$ dim volume as single dim repeat as integer @@ -363,7 +344,7 @@ while keyin<>27 _sndvol musichandle, volume elseif left$(client_cmd, 4) = "ADD:" then dim new_file as string - new_file = _trim$(mid$(client_cmd, 5)) + new_file = mid$(client_cmd, 5) if _fileexists(new_file) then if lcase$(right$(new_file, 4)) = ".m3u" then parsem3u new_file, file() @@ -374,7 +355,7 @@ while keyin<>27 end if elseif left$(client_cmd, 5) = "PLAY:" then dim replace_file as string - replace_file = _trim$(mid$(client_cmd, 6)) + replace_file = mid$(client_cmd, 6) if _fileexists(replace_file) then redim file(0) as string if lcase$(right$(replace_file, 4)) = ".m3u" then @@ -382,7 +363,7 @@ while keyin<>27 else file(0) = replace_file end if - i = -1 + i = 0 playnext = 1 end if elseif client_cmd = "GET_PLAYLIST" then