123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990 |
- MODULE YMF754Util;
- IMPORT
- Commands, Streams, Codecs, Files, Strings;
- CONST
- FNameInstRAM = "YMF754.Bin";
- PROCEDURE Open* (context : Commands.Context);
- VAR
- name, str: ARRAY 256 OF CHAR;
- in: Streams.Reader;
- w, binW: Files.Writer;
- token: ARRAY 1024 OF CHAR;
- f, binF: Files.File;
- c, l: LONGINT; res: WORD;
- BEGIN
- context.arg.SkipWhitespace; context.arg.String(name);
- c := 1;
- in := Codecs.OpenInputStream (name);
- IF in # NIL THEN
- Strings.Concat (name, ".Bin", str);
- binF := Files.New (FNameInstRAM);
- Files.OpenWriter (binW, binF, 0);
- REPEAT
- in.SkipWhitespace;
- in.Token (token);
- IF Strings.Pos ("{", token) # -1 THEN
- Strings.IntToStr (c, str); INC (c);
- Strings.Concat (name, str, str);
- Strings.Concat (str, ".txt", str);
- f := Files.New (str);
- Files.OpenWriter (w, f, 0);
- Strings.Concat ("Creating file: ", str, str);
- context.out.String(str); context.out.Ln;
- END;
- IF Strings.Pos ("0x", token) = 0 THEN
- Strings.Delete (token, 0, 2);
- Strings.TrimRight (token, ",");
- IF w # NIL THEN
- w.String (token); w.Ln;
- END;
- IF (w # NIL) & (binW # NIL) THEN
- Strings.HexStrToInt (token, l, res);
- IF res = Strings.Ok THEN
- binW.RawLInt (l);
- ELSE
- context.error.String("Error!!!"); context.error.Ln;
- END;
- END;
- END;
- IF Strings.Pos ("}", token) # -1 THEN
- context.out.String("Closing file"); context.out.Ln;
- w.Update;
- Files.Register (f);
- END;
- UNTIL in.res = Streams.EOF;
- binW.Update;
- Files.Register (binF);
- END;
- END Open;
- END YMF754Util.
- System.Free YMF754Util~
- YMF754Util.Open 724hwmcode.c~
- Tar.Create Sage.YMF754.tar
- Sage.YMF754.Mod
- YMF754.Bin
- Sage.DriverDatabase.XML
- Sage.YMF754Util.Mod
- 724hwmcode.c
- Sage.YMF754.txt
- ~
|