Apple2-IO-RPi/RaspberryPi/apple2driver/handlers/loadFile.go

44 lines
752 B
Go
Raw Normal View History

2021-05-30 11:18:39 +00:00
package handlers
import (
"fmt"
"os"
)
func LoadFileCommand() {
2021-10-30 11:03:18 +00:00
fileName, _ := comm.ReadString()
2021-05-30 11:18:39 +00:00
file, err := os.OpenFile(fileName, os.O_RDWR, 0755)
if err != nil {
fmt.Printf("ERROR: %s\n", err.Error())
2021-10-30 11:03:18 +00:00
comm.WriteByte(0)
comm.WriteByte(0)
2021-05-30 11:18:39 +00:00
return
}
fileInfo, _ := file.Stat()
fileSize := int(fileInfo.Size())
fmt.Printf("FileSize: %d\n", fileSize)
fileSizeHigh := byte(fileSize >> 8)
fileSizeLow := byte(fileSize & 255)
2021-10-30 11:03:18 +00:00
err = comm.WriteByte(fileSizeLow)
2021-06-01 23:08:21 +00:00
if err != nil {
return
}
2021-10-30 11:03:18 +00:00
err = comm.WriteByte(fileSizeHigh)
2021-06-01 23:08:21 +00:00
if err != nil {
return
}
2021-05-30 11:18:39 +00:00
buffer := make([]byte, fileSize)
fmt.Printf("Read file %s SizeHigh: %d SizeLow: %d\n", fileName, fileSizeHigh, fileSizeLow)
file.Read(buffer)
2021-10-30 11:03:18 +00:00
comm.WriteBuffer(buffer)
2021-05-30 11:18:39 +00:00
}