very small start on handling key presses
All checks were successful
continuous-integration/drone/push Build is passing

This commit is contained in:
Sid 2020-10-12 21:21:41 +01:00
parent 3e90de086a
commit ec8fb167e7

View File

@ -4,6 +4,7 @@ import (
"image/color" "image/color"
"sync" "sync"
"time" "time"
"syscall/js"
"github.com/llgcode/draw2d/draw2dimg" "github.com/llgcode/draw2d/draw2dimg"
"github.com/llgcode/draw2d/draw2dkit" "github.com/llgcode/draw2d/draw2dkit"
@ -20,9 +21,19 @@ var sizeMultiplier = 8
var drawBuf = [64 * 32]byte{} var drawBuf = [64 * 32]byte{}
var drawNeeded = false var drawNeeded = false
var graphicsLock sync.Mutex var graphicsLock sync.Mutex
var window js.Value
var keyPressHandler js.Func = js.FuncOf(func(this js.Value, args []js.Value) interface{} {
println(args[0].Get("type").String())
println(args[0].Get("keyCode").Int())
return nil
})
func main() { func main() {
println("CHIP8 IS HERE!") println("CHIP8 IS HERE!")
window = js.Global()
window.Call("addEventListener", "keydown", keyPressHandler)
cvs, _ = canvas.NewCanvas2d(false) cvs, _ = canvas.NewCanvas2d(false)
cvs.Create(int(width)*sizeMultiplier, int(height)*sizeMultiplier) cvs.Create(int(width)*sizeMultiplier, int(height)*sizeMultiplier)
@ -30,7 +41,7 @@ func main() {
height = float64(cvs.Height()) height = float64(cvs.Height())
width = float64(cvs.Width()) width = float64(cvs.Width())
cpu := chip8.NewCHIP8(getPong()) cpu := chip8.NewCHIP8(getSpaceInvaders())
cvs.Start(60, Render) cvs.Start(60, Render)
i := 0 i := 0