/****************************************

 PT-Player 2.0   © 1994 BetaSoft
 
 uses PTReplay.library also by BetaSoft

Converted from C to ACE by D Benn, 1996
 
****************************************/

#include <exec/types.h>
#include <funcs/exec_funcs.h>
#include <dos/dos.h>

#include <libraries/ptreplay.h>
#include <funcs/ptreplay_funcs.h>

Library "exec"
Library "ptreplay"

Const errCode = 20, OK = 0

Declare Struct Module *module
module = NULL

String vstr
vstr = "$VER: SmallPlay 2.0 [ACE version] (18.01.96)"

LONGINT SigBit, SigMask

If Argcount > 1 Then Print "specify one module only." : System errCode
If Argcount < 1 Then Print "play what module?" : System errCode

module = PTLoadModule(Arg$(1))
If module Then
	SigBit=AllocSignal(-1&)
	If SigBit = -1& Then
		Print "couldn't allocate signal"
		Library Close
		System errCode
	Else		
		PTInstallBits(module, SigBit, -1&, -1&, -1&)
		PTPlay(module)
		SigMask = _Wait(SIGBREAKF_CTRL_C Or Shl(1,SigBit))
		If SigMask And SIGBREAKF_CTRL_C Then
			PTFade(module,1)
		Else
			PTStop(module)
		End If
			
		FreeSignal(SigBit)
		PTUnloadModule(module)

		Library Close
		System OK
	End If
Else 
	Print "couldn't load module ";Arg$(1);"."
	Library Close "exec"
	System errCode
End If
