grim/gousb2snes
Clone
Summary
Browse
Changes
Graph
Update the package path for the new repository host
draft
default
tip
2020-04-27, Gary Kramlich
2bff12a54574
Update the package path for the new repository host
package
main
import
(
"fmt"
"os"
"os/signal"
"syscall"
"keep.imfreedom.org/grim/gousb2snes/network"
"keep.imfreedom.org/grim/gousb2snes/sd2snes"
)
func
main
()
{
sock
,
err
:=
sd2snes
.
New
()
if
err
!=
nil
{
fmt
.
Printf
(
"failed to open serial device : %v\n"
,
err
)
return
}
defer
sock
.
Close
()
info
:=
&
sd2snes
.
Info
{}
err
=
sock
.
Send
(
info
)
if
err
!=
nil
{
fmt
.
Printf
(
"error: %v\n"
,
err
)
return
}
fmt
.
Printf
(
"-----\n%s\n"
,
info
)
// setup the tcp server
server
:=
network
.
NewServer
()
err
=
server
.
Listen
(
":8001"
)
if
err
!=
nil
{
fmt
.
Printf
(
"Error: %#v\n"
,
err
)
return
}
// create our error channel
errChan
:=
make
(
chan
error
)
go
server
.
Run
(
errChan
)
defer
server
.
Shutdown
()
// add unix signal handling
signalChan
:=
make
(
chan
os
.
Signal
,
1
)
signal
.
Notify
(
signalChan
,
syscall
.
SIGINT
,
syscall
.
SIGTERM
)
for
{
select
{
case
err
:=
<-
errChan
:
fmt
.
Printf
(
"Error: %#v\n"
,
err
)
case
s
:=
<-
signalChan
:
fmt
.
Printf
(
"caught signal %v\n"
,
s
)
return
}
}
}