12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061 |
- package mz700_tape_wav_gen
- import (
- "bytes"
- )
- func ASCII2MZ700(asciiStr string) []byte {
- sb := []byte(asciiStr)
- db := make([]byte, 0, len(sb))
- bb := bytes.NewBuffer(db)
- for _, b := range sb {
- if b >= 0x20 && b <= 0x7e {
- cvb := ASCII_TO_MZ700_TABLE[b]
- if cvb == 0 {
- bb.WriteByte(b)
- } else {
- bb.WriteByte(cvb)
- }
- }
- }
- return bb.Bytes()
- }
- func ConvertFilename(ascii string) []byte {
- cb := ASCII2MZ700(ascii)
- l := len(cb)
- if l > 16 {
- cb = cb[:16]
- l = 16
- }
- padl := 17 - l
- for i := 0; i < padl; i++ {
- cb = append(cb, 0x0D)
- }
- return cb
- }
- func ConvertStringCommnet(comment string) []byte {
- cb := ASCII2MZ700(comment)
- l := len(cb)
- if l > 103 {
- cb = cb[:103]
- l = 103
- }
- cb = append(cb, 0x0D)
- l++
- padl := 104 - l
- for i := 0; i < padl; i++ {
- cb = append(cb, 0x00)
- }
- return cb
- }
- func PaddingRawComment(cb []byte) []byte {
- l := len(cb)
- padl := 104 - l
- for i := 0; i < padl; i++ {
- cb = append(cb, 0x00)
- }
- return cb
- }
|