@4bitlabs/sci0 2.4.6 → 2.5.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.ts CHANGED
@@ -15,6 +15,7 @@ import { parseFrom as parsePic } from './parsers/pic';
15
15
  export { parseCursor, parseFont, parseView, parsePic };
16
16
  export { type Loop } from './models/view';
17
17
  export { type Cel } from './models/cel';
18
+ export { type FontFace } from './models/font-face';
18
19
  /** @deprecated use parseCursor() instead */
19
20
  export declare const Cursor: {
20
21
  parseFrom: (source: Uint8Array, options?: import("./parsers/cursor").ParseCursorOptions) => import("./models/cursor").Cursor;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC/D,YAAY,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACzD,YAAY,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAC3D,YAAY,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAEzD,OAAO,EACL,iBAAiB,EACjB,eAAe,EACf,gBAAgB,EAChB,kBAAkB,EAClB,cAAc,EACd,gBAAgB,GACjB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAEvD,OAAO,EAAE,SAAS,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAExD,OAAO,EACL,QAAQ,IAAI,gBAAgB,EAC5B,OAAO,IAAI,uBAAuB,GACnC,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAC9E,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,EAAE,SAAS,IAAI,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC5D,OAAO,EAAE,SAAS,IAAI,SAAS,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,EAAE,SAAS,IAAI,SAAS,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,EAAE,SAAS,IAAI,QAAQ,EAAE,MAAM,eAAe,CAAC;AAEtD,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC;AAEvD,OAAO,EAAE,KAAK,IAAI,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,KAAK,GAAG,EAAE,MAAM,cAAc,CAAC;AAExC,4CAA4C;AAC5C,eAAO,MAAM,MAAM;;CAElB,CAAC;AAEF,0CAA0C;AAC1C,eAAO,MAAM,IAAI;;CAEhB,CAAC;AAEF,0CAA0C;AAC1C,eAAO,MAAM,IAAI;;CAEhB,CAAC;AAEF,yCAAyC;AACzC,eAAO,MAAM,GAAG;;CAEf,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC/D,YAAY,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACzD,YAAY,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAC3D,YAAY,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAEzD,OAAO,EACL,iBAAiB,EACjB,eAAe,EACf,gBAAgB,EAChB,kBAAkB,EAClB,cAAc,EACd,gBAAgB,GACjB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAEvD,OAAO,EAAE,SAAS,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAExD,OAAO,EACL,QAAQ,IAAI,gBAAgB,EAC5B,OAAO,IAAI,uBAAuB,GACnC,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAC9E,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,EAAE,SAAS,IAAI,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC5D,OAAO,EAAE,SAAS,IAAI,SAAS,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,EAAE,SAAS,IAAI,SAAS,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,EAAE,SAAS,IAAI,QAAQ,EAAE,MAAM,eAAe,CAAC;AAEtD,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC;AAEvD,OAAO,EAAE,KAAK,IAAI,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,KAAK,GAAG,EAAE,MAAM,cAAc,CAAC;AACxC,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAEnD,4CAA4C;AAC5C,eAAO,MAAM,MAAM;;CAElB,CAAC;AAEF,0CAA0C;AAC1C,eAAO,MAAM,IAAI;;CAEhB,CAAC;AAEF,0CAA0C;AAC1C,eAAO,MAAM,IAAI;;CAEhB,CAAC;AAEF,yCAAyC;AACzC,eAAO,MAAM,GAAG;;CAEf,CAAC"}
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAKA,oDAO8B;AAN5B,gHAAA,iBAAiB,OAAA;AACjB,8GAAA,eAAe,OAAA;AACf,+GAAA,gBAAgB,OAAA;AAChB,iHAAA,kBAAkB,OAAA;AAClB,6GAAA,cAAc,OAAA;AACd,+GAAA,gBAAgB,OAAA;AAElB,wDAAuD;AAA9C,8GAAA,aAAa,OAAA;AAEtB,mCAAwD;AAA/C,mGAAA,SAAS,OAAA;AAAE,2GAAA,iBAAiB,OAAA;AAErC,6CAG2B;AAFzB,2GAAA,QAAQ,OAAoB;AAC5B,kHAAA,OAAO,OAA2B;AAEpC,6DAA8E;AAArE,mHAAA,gBAAgB,OAAA;AAAE,kHAAA,eAAe,OAAA;AAC1C,qDAAmD;AAA1C,yGAAA,UAAU,OAAA;AACnB,6CAA4D;AAKnD,4FALa,kBAAW,OAKb;AAJpB,yCAAwD;AAIlC,0FAJA,gBAAS,OAIA;AAH/B,yCAAwD;AAGvB,0FAHX,gBAAS,OAGW;AAF1C,uCAAsD;AAEV,yFAFtB,eAAQ,OAEsB;AAKpD,4CAA4C;AAC/B,QAAA,MAAM,GAAG;IACpB,SAAS,EAAE,kBAAW;CACvB,CAAC;AAEF,0CAA0C;AAC7B,QAAA,IAAI,GAAG;IAClB,SAAS,EAAE,gBAAS;CACrB,CAAC;AAEF,0CAA0C;AAC7B,QAAA,IAAI,GAAG;IAClB,SAAS,EAAE,gBAAS;CACrB,CAAC;AAEF,yCAAyC;AAC5B,QAAA,GAAG,GAAG;IACjB,SAAS,EAAE,eAAQ;CACpB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAKA,oDAO8B;AAN5B,gHAAA,iBAAiB,OAAA;AACjB,8GAAA,eAAe,OAAA;AACf,+GAAA,gBAAgB,OAAA;AAChB,iHAAA,kBAAkB,OAAA;AAClB,6GAAA,cAAc,OAAA;AACd,+GAAA,gBAAgB,OAAA;AAElB,wDAAuD;AAA9C,8GAAA,aAAa,OAAA;AAEtB,mCAAwD;AAA/C,mGAAA,SAAS,OAAA;AAAE,2GAAA,iBAAiB,OAAA;AAErC,6CAG2B;AAFzB,2GAAA,QAAQ,OAAoB;AAC5B,kHAAA,OAAO,OAA2B;AAEpC,6DAA8E;AAArE,mHAAA,gBAAgB,OAAA;AAAE,kHAAA,eAAe,OAAA;AAC1C,qDAAmD;AAA1C,yGAAA,UAAU,OAAA;AACnB,6CAA4D;AAKnD,4FALa,kBAAW,OAKb;AAJpB,yCAAwD;AAIlC,0FAJA,gBAAS,OAIA;AAH/B,yCAAwD;AAGvB,0FAHX,gBAAS,OAGW;AAF1C,uCAAsD;AAEV,yFAFtB,eAAQ,OAEsB;AAMpD,4CAA4C;AAC/B,QAAA,MAAM,GAAG;IACpB,SAAS,EAAE,kBAAW;CACvB,CAAC;AAEF,0CAA0C;AAC7B,QAAA,IAAI,GAAG;IAClB,SAAS,EAAE,gBAAS;CACrB,CAAC;AAEF,0CAA0C;AAC7B,QAAA,IAAI,GAAG;IAClB,SAAS,EAAE,gBAAS;CACrB,CAAC;AAEF,yCAAyC;AAC5B,QAAA,GAAG,GAAG;IACjB,SAAS,EAAE,eAAQ;CACpB,CAAC"}
@@ -5,14 +5,29 @@ export declare enum DrawMode {
5
5
  Priority = 2,
6
6
  Control = 4
7
7
  }
8
- export type PatternCode = [size: number, isRect: boolean, isSpray: boolean];
9
- export type DrawCodes = [visual: number, priority: number, control: number];
10
- type SetPaletteCommand = [mode: 'SET_PALETTE', pal: number, colors: Uint8Array];
11
- type UpdatePaletteCommand = [
8
+ export declare const isVisualMode: (mode: DrawMode) => boolean;
9
+ export declare const isPriorityMode: (mode: DrawMode) => boolean;
10
+ export declare const isControlMode: (mode: DrawMode) => boolean;
11
+ export type PatternCode = readonly [
12
+ size: number,
13
+ isRect: boolean,
14
+ isSpray: boolean
15
+ ];
16
+ export type DrawCodes = readonly [
17
+ visual: number,
18
+ priority: number,
19
+ control: number
20
+ ];
21
+ type SetPaletteCommand = readonly [
22
+ mode: 'SET_PALETTE',
23
+ pal: number,
24
+ colors: Uint8Array
25
+ ];
26
+ type UpdatePaletteCommand = readonly [
12
27
  mode: 'UPDATE_PALETTE',
13
28
  entries: [pal: number, idx: number, color: number][]
14
29
  ];
15
- type BrushCommand = [
30
+ type BrushCommand = readonly [
16
31
  mode: 'BRUSH',
17
32
  drawMode: DrawMode,
18
33
  drawCodes: DrawCodes,
@@ -20,19 +35,19 @@ type BrushCommand = [
20
35
  textureCode: number,
21
36
  pos: StaticVec2
22
37
  ];
23
- type FillCommand = [
38
+ type FillCommand = readonly [
24
39
  mode: 'FILL',
25
40
  drawMode: DrawMode,
26
41
  drawCodes: DrawCodes,
27
42
  pos: StaticVec2
28
43
  ];
29
- type PolylineCommand = [
44
+ type PolylineCommand = readonly [
30
45
  mode: 'PLINE',
31
46
  drawMode: DrawMode,
32
47
  drawCodes: DrawCodes,
33
48
  ...points: StaticVec2[]
34
49
  ];
35
- type EmbeddedCelCommand = [
50
+ type EmbeddedCelCommand = readonly [
36
51
  mode: 'CEL',
37
52
  drawMode: DrawMode,
38
53
  pos: StaticVec2,
@@ -1 +1 @@
1
- {"version":3,"file":"draw-command.d.ts","sourceRoot":"","sources":["../../src/models/draw-command.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAC5B,OAAO,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AAEpC,oBAAY,QAAQ;IAClB,MAAM,IAAS;IACf,QAAQ,IAAS;IACjB,OAAO,IAAS;CACjB;AAED,MAAM,MAAM,WAAW,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;AAC5E,MAAM,MAAM,SAAS,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;AAE5E,KAAK,iBAAiB,GAAG,CAAC,IAAI,EAAE,aAAa,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC;AAEhF,KAAK,oBAAoB,GAAG;IAC1B,IAAI,EAAE,gBAAgB;IACtB,OAAO,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,EAAE;CACrD,CAAC;AAEF,KAAK,YAAY,GAAG;IAClB,IAAI,EAAE,OAAO;IACb,QAAQ,EAAE,QAAQ;IAClB,SAAS,EAAE,SAAS;IACpB,WAAW,EAAE,WAAW;IACxB,WAAW,EAAE,MAAM;IACnB,GAAG,EAAE,UAAU;CAChB,CAAC;AAEF,KAAK,WAAW,GAAG;IACjB,IAAI,EAAE,MAAM;IACZ,QAAQ,EAAE,QAAQ;IAClB,SAAS,EAAE,SAAS;IACpB,GAAG,EAAE,UAAU;CAChB,CAAC;AAEF,KAAK,eAAe,GAAG;IACrB,IAAI,EAAE,OAAO;IACb,QAAQ,EAAE,QAAQ;IAClB,SAAS,EAAE,SAAS;IACpB,GAAG,MAAM,EAAE,UAAU,EAAE;CACxB,CAAC;AAEF,KAAK,kBAAkB,GAAG;IACxB,IAAI,EAAE,KAAK;IACX,QAAQ,EAAE,QAAQ;IAClB,GAAG,EAAE,UAAU;IACf,GAAG,EAAE,GAAG;CACT,CAAC;AAEF,MAAM,MAAM,WAAW,GACnB,YAAY,GACZ,WAAW,GACX,eAAe,GACf,iBAAiB,GACjB,oBAAoB,GACpB,kBAAkB,CAAC"}
1
+ {"version":3,"file":"draw-command.d.ts","sourceRoot":"","sources":["../../src/models/draw-command.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAC5B,OAAO,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AAEpC,oBAAY,QAAQ;IAClB,MAAM,IAAQ;IACd,QAAQ,IAAQ;IAChB,OAAO,IAAQ;CAChB;AAED,eAAO,MAAM,YAAY,SAAU,QAAQ,YACiB,CAAC;AAE7D,eAAO,MAAM,cAAc,SAAU,QAAQ,YACmB,CAAC;AAEjE,eAAO,MAAM,aAAa,SAAU,QAAQ,YACkB,CAAC;AAE/D,MAAM,MAAM,WAAW,GAAG,SAAS;IACjC,IAAI,EAAE,MAAM;IACZ,MAAM,EAAE,OAAO;IACf,OAAO,EAAE,OAAO;CACjB,CAAC;AAEF,MAAM,MAAM,SAAS,GAAG,SAAS;IAC/B,MAAM,EAAE,MAAM;IACd,QAAQ,EAAE,MAAM;IAChB,OAAO,EAAE,MAAM;CAChB,CAAC;AAEF,KAAK,iBAAiB,GAAG,SAAS;IAChC,IAAI,EAAE,aAAa;IACnB,GAAG,EAAE,MAAM;IACX,MAAM,EAAE,UAAU;CACnB,CAAC;AAEF,KAAK,oBAAoB,GAAG,SAAS;IACnC,IAAI,EAAE,gBAAgB;IACtB,OAAO,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,EAAE;CACrD,CAAC;AAEF,KAAK,YAAY,GAAG,SAAS;IAC3B,IAAI,EAAE,OAAO;IACb,QAAQ,EAAE,QAAQ;IAClB,SAAS,EAAE,SAAS;IACpB,WAAW,EAAE,WAAW;IACxB,WAAW,EAAE,MAAM;IACnB,GAAG,EAAE,UAAU;CAChB,CAAC;AAEF,KAAK,WAAW,GAAG,SAAS;IAC1B,IAAI,EAAE,MAAM;IACZ,QAAQ,EAAE,QAAQ;IAClB,SAAS,EAAE,SAAS;IACpB,GAAG,EAAE,UAAU;CAChB,CAAC;AAEF,KAAK,eAAe,GAAG,SAAS;IAC9B,IAAI,EAAE,OAAO;IACb,QAAQ,EAAE,QAAQ;IAClB,SAAS,EAAE,SAAS;IACpB,GAAG,MAAM,EAAE,UAAU,EAAE;CACxB,CAAC;AAEF,KAAK,kBAAkB,GAAG,SAAS;IACjC,IAAI,EAAE,KAAK;IACX,QAAQ,EAAE,QAAQ;IAClB,GAAG,EAAE,UAAU;IACf,GAAG,EAAE,GAAG;CACT,CAAC;AAEF,MAAM,MAAM,WAAW,GACnB,YAAY,GACZ,WAAW,GACX,eAAe,GACf,iBAAiB,GACjB,oBAAoB,GACpB,kBAAkB,CAAC"}
@@ -1,10 +1,16 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.DrawMode = void 0;
3
+ exports.isControlMode = exports.isPriorityMode = exports.isVisualMode = exports.DrawMode = void 0;
4
4
  var DrawMode;
5
5
  (function (DrawMode) {
6
6
  DrawMode[DrawMode["Visual"] = 1] = "Visual";
7
7
  DrawMode[DrawMode["Priority"] = 2] = "Priority";
8
8
  DrawMode[DrawMode["Control"] = 4] = "Control";
9
9
  })(DrawMode || (exports.DrawMode = DrawMode = {}));
10
+ const isVisualMode = (mode) => (mode & DrawMode.Visual) === DrawMode.Visual;
11
+ exports.isVisualMode = isVisualMode;
12
+ const isPriorityMode = (mode) => (mode & DrawMode.Priority) === DrawMode.Priority;
13
+ exports.isPriorityMode = isPriorityMode;
14
+ const isControlMode = (mode) => (mode & DrawMode.Control) === DrawMode.Control;
15
+ exports.isControlMode = isControlMode;
10
16
  //# sourceMappingURL=draw-command.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"draw-command.js","sourceRoot":"","sources":["../../src/models/draw-command.ts"],"names":[],"mappings":";;;AAGA,IAAY,QAIX;AAJD,WAAY,QAAQ;IAClB,2CAAe,CAAA;IACf,+CAAiB,CAAA;IACjB,6CAAgB,CAAA;AAClB,CAAC,EAJW,QAAQ,wBAAR,QAAQ,QAInB"}
1
+ {"version":3,"file":"draw-command.js","sourceRoot":"","sources":["../../src/models/draw-command.ts"],"names":[],"mappings":";;;AAGA,IAAY,QAIX;AAJD,WAAY,QAAQ;IAClB,2CAAc,CAAA;IACd,+CAAgB,CAAA;IAChB,6CAAe,CAAA;AACjB,CAAC,EAJW,QAAQ,wBAAR,QAAQ,QAInB;AAEM,MAAM,YAAY,GAAG,CAAC,IAAc,EAAE,EAAE,CAC5C,CAAC,IAAI,GAAG,QAAQ,CAAC,MAAM,CAAc,KAAK,QAAQ,CAAC,MAAM,CAAC;AADhD,QAAA,YAAY,gBACoC;AAEtD,MAAM,cAAc,GAAG,CAAC,IAAc,EAAE,EAAE,CAC9C,CAAC,IAAI,GAAG,QAAQ,CAAC,QAAQ,CAAc,KAAK,QAAQ,CAAC,QAAQ,CAAC;AADpD,QAAA,cAAc,kBACsC;AAE1D,MAAM,aAAa,GAAG,CAAC,IAAc,EAAE,EAAE,CAC7C,CAAC,IAAI,GAAG,QAAQ,CAAC,OAAO,CAAc,KAAK,QAAQ,CAAC,OAAO,CAAC;AADlD,QAAA,aAAa,iBACqC"}
@@ -1 +1 @@
1
- {"version":3,"file":"resource-id.d.ts","sourceRoot":"","sources":["../../src/models/resource-id.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAG/C,eAAO,MAAM,eAAe,OAAQ,MAAM,KAAG,YAChB,CAAC;AAE9B,eAAO,MAAM,iBAAiB,OAAQ,MAAM,KAAG,MAA8B,CAAC;AAE9E,eAAO,MAAM,gBAAgB,OAAQ,MAAM,WACa,CAAC;AAEzD,eAAO,MAAM,kBAAkB,OAAQ,MAAM,oGA0B5C,CAAC;AAEF,KAAK,mBAAmB,GAAG,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC;AAEnD,eAAO,MAAM,cAAc,aACd,YAAY,EAAE,KAAG,mBAES,CAAC;AAExC,eAAO,MAAM,gBAAgB,eACd,MAAM,EAAE,KAAG,mBAEiB,CAAC"}
1
+ {"version":3,"file":"resource-id.d.ts","sourceRoot":"","sources":["../../src/models/resource-id.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAI/C,eAAO,MAAM,eAAe,OAAQ,MAAM,KAAG,YAChB,CAAC;AAE9B,eAAO,MAAM,iBAAiB,OAAQ,MAAM,KAAG,MAA8B,CAAC;AAE9E,eAAO,MAAM,gBAAgB,OAAQ,MAAM,WAC0B,CAAC;AAEtE,eAAO,MAAM,kBAAkB,OAAQ,MAAM,oGA0B5C,CAAC;AAEF,KAAK,mBAAmB,GAAG,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC;AAEnD,eAAO,MAAM,cAAc,aACd,YAAY,EAAE,KAAG,mBAES,CAAC;AAExC,eAAO,MAAM,gBAAgB,eACd,MAAM,EAAE,KAAG,mBAEiB,CAAC"}
@@ -25,11 +25,12 @@ var __importStar = (this && this.__importStar) || function (mod) {
25
25
  Object.defineProperty(exports, "__esModule", { value: true });
26
26
  exports.isResourceNumber = exports.isResourceType = exports.getResourceTypeStr = exports.getResourceIdStr = exports.getResourceNumber = exports.getResourceType = void 0;
27
27
  const ResourceTypes = __importStar(require("./resource-type"));
28
+ const exhaustive_1 = require("../utils/exhaustive");
28
29
  const getResourceType = (id) => (id >>> 11);
29
30
  exports.getResourceType = getResourceType;
30
31
  const getResourceNumber = (id) => id & 2047;
31
32
  exports.getResourceNumber = getResourceNumber;
32
- const getResourceIdStr = (id) => `(${(0, exports.getResourceTypeStr)(id)}:${(0, exports.getResourceNumber)(id)})`;
33
+ const getResourceIdStr = (id) => `(${(0, exports.getResourceTypeStr)(id)}:${(0, exports.getResourceNumber)(id).toString(10)})`;
33
34
  exports.getResourceIdStr = getResourceIdStr;
34
35
  const getResourceTypeStr = (id) => {
35
36
  const type = (0, exports.getResourceType)(id);
@@ -55,7 +56,7 @@ const getResourceTypeStr = (id) => {
55
56
  case ResourceTypes.PATCH_TYPE:
56
57
  return 'Patch';
57
58
  default:
58
- throw new Error(`Unsupported resource type: ${type}`);
59
+ (0, exhaustive_1.exhaustive)('Unsupported resource type', type);
59
60
  }
60
61
  };
61
62
  exports.getResourceTypeStr = getResourceTypeStr;
@@ -1 +1 @@
1
- {"version":3,"file":"resource-id.js","sourceRoot":"","sources":["../../src/models/resource-id.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AACA,+DAAiD;AAE1C,MAAM,eAAe,GAAG,CAAC,EAAU,EAAgB,EAAE,CAC1D,CAAC,EAAE,KAAK,EAAE,CAAiB,CAAC;AADjB,QAAA,eAAe,mBACE;AAEvB,MAAM,iBAAiB,GAAG,CAAC,EAAU,EAAU,EAAE,CAAC,EAAE,GAAG,IAAe,CAAC;AAAjE,QAAA,iBAAiB,qBAAgD;AAEvE,MAAM,gBAAgB,GAAG,CAAC,EAAU,EAAE,EAAE,CAC7C,IAAI,IAAA,0BAAkB,EAAC,EAAE,CAAC,IAAI,IAAA,yBAAiB,EAAC,EAAE,CAAC,GAAG,CAAC;AAD5C,QAAA,gBAAgB,oBAC4B;AAElD,MAAM,kBAAkB,GAAG,CAAC,EAAU,EAAE,EAAE;IAC/C,MAAM,IAAI,GAAG,IAAA,uBAAe,EAAC,EAAE,CAAC,CAAC;IACjC,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,aAAa,CAAC,SAAS;YAC1B,OAAO,MAAM,CAAC;QAChB,KAAK,aAAa,CAAC,QAAQ;YACzB,OAAO,KAAK,CAAC;QACf,KAAK,aAAa,CAAC,WAAW;YAC5B,OAAO,QAAQ,CAAC;QAClB,KAAK,aAAa,CAAC,SAAS;YAC1B,OAAO,MAAM,CAAC;QAChB,KAAK,aAAa,CAAC,UAAU;YAC3B,OAAO,OAAO,CAAC;QACjB,KAAK,aAAa,CAAC,WAAW;YAC5B,OAAO,QAAQ,CAAC;QAClB,KAAK,aAAa,CAAC,UAAU;YAC3B,OAAO,OAAO,CAAC;QACjB,KAAK,aAAa,CAAC,SAAS;YAC1B,OAAO,MAAM,CAAC;QAChB,KAAK,aAAa,CAAC,WAAW;YAC5B,OAAO,QAAQ,CAAC;QAClB,KAAK,aAAa,CAAC,UAAU;YAC3B,OAAO,OAAO,CAAC;QACjB;YACE,MAAM,IAAI,KAAK,CAAC,8BAA8B,IAAI,EAAE,CAAC,CAAC;IAC1D,CAAC;AACH,CAAC,CAAC;AA1BW,QAAA,kBAAkB,sBA0B7B;AAIK,MAAM,cAAc,GACzB,CAAC,GAAG,KAAqB,EAAuB,EAAE,CAClD,CAAC,EAAU,EAAW,EAAE,CACtB,KAAK,CAAC,QAAQ,CAAC,IAAA,uBAAe,EAAC,EAAE,CAAC,CAAC,CAAC;AAH3B,QAAA,cAAc,kBAGa;AAEjC,MAAM,gBAAgB,GAC3B,CAAC,GAAG,OAAiB,EAAuB,EAAE,CAC9C,CAAC,EAAU,EAAW,EAAE,CACtB,OAAO,CAAC,QAAQ,CAAC,IAAA,yBAAiB,EAAC,EAAE,CAAC,CAAC,CAAC;AAH/B,QAAA,gBAAgB,oBAGe"}
1
+ {"version":3,"file":"resource-id.js","sourceRoot":"","sources":["../../src/models/resource-id.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AACA,+DAAiD;AACjD,oDAAiD;AAE1C,MAAM,eAAe,GAAG,CAAC,EAAU,EAAgB,EAAE,CAC1D,CAAC,EAAE,KAAK,EAAE,CAAiB,CAAC;AADjB,QAAA,eAAe,mBACE;AAEvB,MAAM,iBAAiB,GAAG,CAAC,EAAU,EAAU,EAAE,CAAC,EAAE,GAAG,IAAe,CAAC;AAAjE,QAAA,iBAAiB,qBAAgD;AAEvE,MAAM,gBAAgB,GAAG,CAAC,EAAU,EAAE,EAAE,CAC7C,IAAI,IAAA,0BAAkB,EAAC,EAAE,CAAC,IAAI,IAAA,yBAAiB,EAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,GAAG,CAAC;AADzD,QAAA,gBAAgB,oBACyC;AAE/D,MAAM,kBAAkB,GAAG,CAAC,EAAU,EAAE,EAAE;IAC/C,MAAM,IAAI,GAAG,IAAA,uBAAe,EAAC,EAAE,CAAC,CAAC;IACjC,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,aAAa,CAAC,SAAS;YAC1B,OAAO,MAAM,CAAC;QAChB,KAAK,aAAa,CAAC,QAAQ;YACzB,OAAO,KAAK,CAAC;QACf,KAAK,aAAa,CAAC,WAAW;YAC5B,OAAO,QAAQ,CAAC;QAClB,KAAK,aAAa,CAAC,SAAS;YAC1B,OAAO,MAAM,CAAC;QAChB,KAAK,aAAa,CAAC,UAAU;YAC3B,OAAO,OAAO,CAAC;QACjB,KAAK,aAAa,CAAC,WAAW;YAC5B,OAAO,QAAQ,CAAC;QAClB,KAAK,aAAa,CAAC,UAAU;YAC3B,OAAO,OAAO,CAAC;QACjB,KAAK,aAAa,CAAC,SAAS;YAC1B,OAAO,MAAM,CAAC;QAChB,KAAK,aAAa,CAAC,WAAW;YAC5B,OAAO,QAAQ,CAAC;QAClB,KAAK,aAAa,CAAC,UAAU;YAC3B,OAAO,OAAO,CAAC;QACjB;YACE,IAAA,uBAAU,EAAC,2BAA2B,EAAE,IAAI,CAAC,CAAC;IAClD,CAAC;AACH,CAAC,CAAC;AA1BW,QAAA,kBAAkB,sBA0B7B;AAIK,MAAM,cAAc,GACzB,CAAC,GAAG,KAAqB,EAAuB,EAAE,CAClD,CAAC,EAAU,EAAW,EAAE,CACtB,KAAK,CAAC,QAAQ,CAAC,IAAA,uBAAe,EAAC,EAAE,CAAC,CAAC,CAAC;AAH3B,QAAA,cAAc,kBAGa;AAEjC,MAAM,gBAAgB,GAC3B,CAAC,GAAG,OAAiB,EAAuB,EAAE,CAC9C,CAAC,EAAU,EAAW,EAAE,CACtB,OAAO,CAAC,QAAQ,CAAC,IAAA,yBAAiB,EAAC,EAAE,CAAC,CAAC,CAAC;AAH/B,QAAA,gBAAgB,oBAGe"}
@@ -1 +1 @@
1
- {"version":3,"file":"compression.d.ts","sourceRoot":"","sources":["../../src/parsers/compression.ts"],"names":[],"mappings":"AAwBA,eAAO,MAAM,UAAU,SACf,MAAM,GAAG,OAAO,UACd,MAAM,SACP,UAAU,KAChB,UAeF,CAAC"}
1
+ {"version":3,"file":"compression.d.ts","sourceRoot":"","sources":["../../src/parsers/compression.ts"],"names":[],"mappings":"AA4BA,eAAO,MAAM,UAAU,SACf,MAAM,GAAG,OAAO,UACd,MAAM,SACP,UAAU,KAChB,UAmBF,CAAC"}
@@ -3,31 +3,34 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.decompress = void 0;
4
4
  const huffman_1 = require("@4bitlabs/codecs/huffman");
5
5
  const lzw_1 = require("@4bitlabs/codecs/lzw");
6
+ const comp3_1 = require("@4bitlabs/codecs/comp3");
7
+ const exhaustive_1 = require("../utils/exhaustive");
6
8
  const sci0Supported = (it) => typeof it === 'number' && Number.isInteger(it) && [0, 1, 2].includes(it);
7
- const sci01Supported = (it) => typeof it === 'number' && Number.isInteger(it) && [0, 1].includes(it);
9
+ const sci01Supported = (it) => typeof it === 'number' && Number.isInteger(it) && [0, 1, 2].includes(it);
8
10
  const SCI0 = {
9
11
  0: (bytes) => bytes,
10
- 1: (bytes) => (0, lzw_1.decode)(bytes, { literalWidth: 8, order: 'lsb' }),
11
- 2: (bytes) => (0, huffman_1.decode)(bytes),
12
+ 1: (bytes) => (0, lzw_1.unpack)(bytes, { literalWidth: 8, order: 'lsb' }),
13
+ 2: (bytes) => (0, huffman_1.unpack)(bytes),
12
14
  };
13
15
  const SCI01 = {
14
16
  0: (bytes) => bytes,
15
- 1: (bytes) => (0, huffman_1.decode)(bytes),
17
+ 1: (bytes) => (0, huffman_1.unpack)(bytes),
18
+ 2: (bytes) => (0, comp3_1.unpack)(bytes),
16
19
  };
17
20
  const decompress = (mode, method, bytes) => {
18
21
  switch (mode) {
19
22
  case 'sci0': {
20
23
  if (!sci0Supported(method))
21
- throw new Error(`unsupported compression algorithm: ${method}`);
24
+ throw new Error(`unsupported compression algorithm: ${method.toString(10)}`);
22
25
  return SCI0[method](bytes);
23
26
  }
24
27
  case 'sci01': {
25
28
  if (!sci01Supported(method))
26
- throw new Error(`unsupported compression algorithm: ${method}`);
29
+ throw new Error(`unsupported compression algorithm: ${method.toString(10)}`);
27
30
  return SCI01[method](bytes);
28
31
  }
29
32
  default:
30
- throw new Error(`unsupported compression mode: ${mode}`);
33
+ (0, exhaustive_1.exhaustive)('unsupported compression mode', mode);
31
34
  }
32
35
  };
33
36
  exports.decompress = decompress;
@@ -1 +1 @@
1
- {"version":3,"file":"compression.js","sourceRoot":"","sources":["../../src/parsers/compression.ts"],"names":[],"mappings":";;;AAAA,sDAAmE;AACnE,8CAA2D;AAM3D,MAAM,aAAa,GAAG,CAAC,EAAW,EAAwB,EAAE,CAC1D,OAAO,EAAE,KAAK,QAAQ,IAAI,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;AAE3E,MAAM,cAAc,GAAG,CAAC,EAAW,EAAyB,EAAE,CAC5D,OAAO,EAAE,KAAK,QAAQ,IAAI,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;AAExE,MAAM,IAAI,GAAyC;IACjD,CAAC,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK;IACnB,CAAC,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,IAAA,YAAS,EAAC,KAAK,EAAE,EAAE,YAAY,EAAE,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;IACjE,CAAC,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,IAAA,gBAAa,EAAC,KAAK,CAAC;CACnC,CAAC;AAEF,MAAM,KAAK,GAA0C;IACnD,CAAC,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK;IACnB,CAAC,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,IAAA,gBAAa,EAAC,KAAK,CAAC;CACnC,CAAC;AAEK,MAAM,UAAU,GAAG,CACxB,IAAsB,EACtB,MAAc,EACd,KAAiB,EACL,EAAE;IACd,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,MAAM,CAAC,CAAC,CAAC;YACZ,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC;gBACxB,MAAM,IAAI,KAAK,CAAC,sCAAsC,MAAM,EAAE,CAAC,CAAC;YAClE,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC;QACD,KAAK,OAAO,CAAC,CAAC,CAAC;YACb,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC;gBACzB,MAAM,IAAI,KAAK,CAAC,sCAAsC,MAAM,EAAE,CAAC,CAAC;YAClE,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC;QAC9B,CAAC;QACD;YACE,MAAM,IAAI,KAAK,CAAC,iCAAiC,IAAI,EAAE,CAAC,CAAC;IAC7D,CAAC;AACH,CAAC,CAAC;AAnBW,QAAA,UAAU,cAmBrB"}
1
+ {"version":3,"file":"compression.js","sourceRoot":"","sources":["../../src/parsers/compression.ts"],"names":[],"mappings":";;;AAAA,sDAAmE;AACnE,8CAA2D;AAC3D,kDAA+D;AAE/D,oDAAiD;AAMjD,MAAM,aAAa,GAAG,CAAC,EAAW,EAAwB,EAAE,CAC1D,OAAO,EAAE,KAAK,QAAQ,IAAI,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;AAE3E,MAAM,cAAc,GAAG,CAAC,EAAW,EAAyB,EAAE,CAC5D,OAAO,EAAE,KAAK,QAAQ,IAAI,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;AAE3E,MAAM,IAAI,GAAyC;IACjD,CAAC,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK;IACnB,CAAC,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,IAAA,YAAS,EAAC,KAAK,EAAE,EAAE,YAAY,EAAE,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;IACjE,CAAC,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,IAAA,gBAAa,EAAC,KAAK,CAAC;CACnC,CAAC;AAEF,MAAM,KAAK,GAA0C;IACnD,CAAC,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK;IACnB,CAAC,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,IAAA,gBAAa,EAAC,KAAK,CAAC;IAClC,CAAC,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,IAAA,cAAW,EAAC,KAAK,CAAC;CACjC,CAAC;AAEK,MAAM,UAAU,GAAG,CACxB,IAAsB,EACtB,MAAc,EACd,KAAiB,EACL,EAAE;IACd,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,MAAM,CAAC,CAAC,CAAC;YACZ,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC;gBACxB,MAAM,IAAI,KAAK,CACb,sCAAsC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,CAC5D,CAAC;YACJ,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC;QACD,KAAK,OAAO,CAAC,CAAC,CAAC;YACb,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC;gBACzB,MAAM,IAAI,KAAK,CACb,sCAAsC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,CAC5D,CAAC;YACJ,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC;QAC9B,CAAC;QACD;YACE,IAAA,uBAAU,EAAC,8BAA8B,EAAE,IAAI,CAAC,CAAC;IACrD,CAAC;AACH,CAAC,CAAC;AAvBW,QAAA,UAAU,cAuBrB"}
@@ -1 +1 @@
1
- {"version":3,"file":"mapping.d.ts","sourceRoot":"","sources":["../../src/parsers/mapping.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAuBrD,eAAO,MAAM,OAAO,UACX,UAAU,gBACH,WAAW,KAAK,IAAI,KACjC,IAAI,GAAG,UAUT,CAAC;AAEF,eAAO,MAAM,QAAQ,UAAW,UAAU,KAAG,CAAC,WAAW,EAAE,EAAE,OAAO,CAInE,CAAC"}
1
+ {"version":3,"file":"mapping.d.ts","sourceRoot":"","sources":["../../src/parsers/mapping.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAuBrD,eAAO,MAAM,OAAO,UACX,UAAU,YACP,CAAC,CAAC,EAAE,WAAW,KAAK,IAAI,KACjC,IAAI,GAAG,UAUT,CAAC;AAEF,eAAO,MAAM,QAAQ,UAAW,UAAU,KAAG,CAAC,WAAW,EAAE,EAAE,OAAO,CAInE,CAAC"}
@@ -2,8 +2,12 @@ import { BitReader } from '@4bitlabs/readers';
2
2
  import { OpCode } from './op-codes';
3
3
  import { PicState } from './pic-state';
4
4
  import { DrawCommand } from '../../models/draw-command';
5
- export declare const IS_DONE: unique symbol;
6
- type CodeHandler = (br: BitReader, state: PicState) => DrawCommand[] | typeof IS_DONE | void;
7
- export declare const CodeHandlers: Record<OpCode, CodeHandler>;
5
+ export interface CodeHandlerContext {
6
+ r: BitReader;
7
+ state: PicState;
8
+ cmds: DrawCommand[];
9
+ }
10
+ type CodeHandler = (ctx: CodeHandlerContext) => void;
11
+ export declare const CodeHandlers: Record<Exclude<OpCode, OpCode.Done>, CodeHandler>;
8
12
  export {};
9
13
  //# sourceMappingURL=handlers.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"handlers.d.ts","sourceRoot":"","sources":["../../../src/parsers/pic/handlers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,EAAoC,MAAM,EAAE,MAAM,YAAY,CAAC;AACtE,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAEvC,OAAO,EAAE,WAAW,EAAY,MAAM,2BAA2B,CAAC;AAKlE,eAAO,MAAM,OAAO,eAAiB,CAAC;AAEtC,KAAK,WAAW,GAAG,CACjB,EAAE,EAAE,SAAS,EACb,KAAK,EAAE,QAAQ,KACZ,WAAW,EAAE,GAAG,OAAO,OAAO,GAAG,IAAI,CAAC;AAE3C,eAAO,MAAM,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAsJpD,CAAC"}
1
+ {"version":3,"file":"handlers.d.ts","sourceRoot":"","sources":["../../../src/parsers/pic/handlers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,EAAoC,MAAM,EAAE,MAAM,YAAY,CAAC;AACtE,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAEvC,OAAO,EAAE,WAAW,EAAY,MAAM,2BAA2B,CAAC;AAKlE,MAAM,WAAW,kBAAkB;IACjC,CAAC,EAAE,SAAS,CAAC;IACb,KAAK,EAAE,QAAQ,CAAC;IAChB,IAAI,EAAE,WAAW,EAAE,CAAC;CACrB;AAED,KAAK,WAAW,GAAG,CAAC,GAAG,EAAE,kBAAkB,KAAK,IAAI,CAAC;AAErD,eAAO,MAAM,YAAY,EAAE,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,EAAE,WAAW,CAmJ1E,CAAC"}
@@ -1,86 +1,86 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.CodeHandlers = exports.IS_DONE = void 0;
3
+ exports.CodeHandlers = void 0;
4
4
  const op_codes_1 = require("./op-codes");
5
5
  const points_1 = require("./points");
6
6
  const draw_command_1 = require("../../models/draw-command");
7
7
  const vec2_1 = require("../../models/vec2");
8
8
  const repeat_1 = require("../../utils/repeat");
9
9
  const cel_1 = require("../cel");
10
- exports.IS_DONE = Symbol('done');
11
10
  exports.CodeHandlers = {
12
- [op_codes_1.OpCode.SetVisual](br, state) {
11
+ [op_codes_1.OpCode.SetVisual]({ r, state }) {
13
12
  const [, priorityCode, controlCode] = state.drawCodes;
14
- const visualCode = br.read32(8);
13
+ const visualCode = r.read32(8);
15
14
  state.drawCodes = [visualCode, priorityCode, controlCode];
16
15
  state.drawMode |= draw_command_1.DrawMode.Visual;
17
16
  },
18
- [op_codes_1.OpCode.ClearVisual](br, state) {
17
+ [op_codes_1.OpCode.ClearVisual]({ state }) {
19
18
  state.drawMode &= ~draw_command_1.DrawMode.Visual;
20
19
  },
21
- [op_codes_1.OpCode.SetPriority](br, state) {
20
+ [op_codes_1.OpCode.SetPriority]({ r: br, state }) {
22
21
  const [visualCode, , controlCode] = state.drawCodes;
23
22
  const priorityCode = br.read32(8);
24
23
  state.drawCodes = [visualCode, priorityCode, controlCode];
25
24
  state.drawMode |= draw_command_1.DrawMode.Priority;
26
25
  },
27
- [op_codes_1.OpCode.ClearPriority](br, state) {
26
+ [op_codes_1.OpCode.ClearPriority]({ state }) {
28
27
  state.drawMode &= ~draw_command_1.DrawMode.Priority;
29
28
  },
30
- [op_codes_1.OpCode.SetControl](br, state) {
29
+ [op_codes_1.OpCode.SetControl]({ r, state }) {
31
30
  const [visualCode, priorityCode] = state.drawCodes;
32
- const controlCode = br.read32(8);
31
+ const controlCode = r.read32(8);
33
32
  state.drawCodes = [visualCode, priorityCode, controlCode];
34
33
  state.drawMode |= draw_command_1.DrawMode.Control;
35
34
  },
36
- [op_codes_1.OpCode.ClearControl](br, state) {
35
+ [op_codes_1.OpCode.ClearControl]({ state }) {
37
36
  state.drawMode &= ~draw_command_1.DrawMode.Control;
38
37
  },
39
- [op_codes_1.OpCode.ShortLines](br, { drawMode, drawCodes }) {
38
+ // Lines
39
+ [op_codes_1.OpCode.ShortLines]({ r, state, cmds }) {
40
40
  const points = [];
41
- const prev = (0, points_1.getPoint24)(br, vec2_1.vec2.create());
41
+ const prev = (0, points_1.getPoint24)(r, vec2_1.vec2.create());
42
42
  points.push(vec2_1.vec2.clone(prev));
43
- while (br.peek32(8) < 0xf0) {
44
- const next = (0, points_1.getPoint8)(br, vec2_1.vec2.create(), prev);
43
+ while (r.peek32(8) < 0xf0) {
44
+ const next = (0, points_1.getPoint8)(r, vec2_1.vec2.create(), prev);
45
45
  points.push(next);
46
46
  vec2_1.vec2.copy(prev, next);
47
47
  }
48
- return [['PLINE', drawMode, drawCodes, ...points]];
48
+ cmds.push(['PLINE', state.drawMode, state.drawCodes, ...points]);
49
49
  },
50
- [op_codes_1.OpCode.MediumLines](br, { drawMode, drawCodes }) {
50
+ [op_codes_1.OpCode.MediumLines]({ r, state, cmds }) {
51
51
  const points = [];
52
- const prev = (0, points_1.getPoint24)(br, vec2_1.vec2.create());
52
+ const prev = (0, points_1.getPoint24)(r, vec2_1.vec2.create());
53
53
  points.push(vec2_1.vec2.clone(prev));
54
- while (br.peek32(8) < 0xf0) {
55
- const next = (0, points_1.getPoint16)(br, vec2_1.vec2.create(), prev);
54
+ while (r.peek32(8) < 0xf0) {
55
+ const next = (0, points_1.getPoint16)(r, vec2_1.vec2.create(), prev);
56
56
  points.push(next);
57
57
  vec2_1.vec2.copy(prev, next);
58
58
  }
59
- return [['PLINE', drawMode, drawCodes, ...points]];
59
+ cmds.push(['PLINE', state.drawMode, state.drawCodes, ...points]);
60
60
  },
61
- [op_codes_1.OpCode.LongLines](br, { drawMode, drawCodes }) {
61
+ [op_codes_1.OpCode.LongLines]({ r, state, cmds }) {
62
62
  const points = [];
63
- points.push((0, points_1.getPoint24)(br, vec2_1.vec2.create()));
64
- while (br.peek32(8) < 0xf0) {
65
- points.push((0, points_1.getPoint24)(br, vec2_1.vec2.create()));
63
+ points.push((0, points_1.getPoint24)(r, vec2_1.vec2.create()));
64
+ while (r.peek32(8) < 0xf0) {
65
+ points.push((0, points_1.getPoint24)(r, vec2_1.vec2.create()));
66
66
  }
67
- return [['PLINE', drawMode, drawCodes, ...points]];
67
+ cmds.push(['PLINE', state.drawMode, state.drawCodes, ...points]);
68
68
  },
69
69
  // Patterns
70
- [op_codes_1.OpCode.SetPattern](br, state) {
71
- const code = br.read32(8);
70
+ [op_codes_1.OpCode.SetPattern]({ r, state }) {
71
+ const code = r.read32(8);
72
72
  state.patternCode = [
73
73
  code & 0b00111,
74
74
  (code & 0b010000) !== 0,
75
75
  (code & 0b100000) !== 0,
76
76
  ];
77
77
  },
78
- [op_codes_1.OpCode.ShortBrushes](br, { drawMode, drawCodes, patternCode }) {
79
- const cmds = [];
78
+ [op_codes_1.OpCode.ShortBrushes]({ r, state, cmds }) {
80
79
  const prev = vec2_1.vec2.create();
80
+ const { drawMode, drawCodes, patternCode } = state;
81
81
  const [, , isTextured] = patternCode;
82
- let texture = isTextured ? br.read32(8) >> 1 : 0;
83
- (0, points_1.getPoint24)(br, prev);
82
+ let texture = isTextured ? r.read32(8) >> 1 : 0;
83
+ (0, points_1.getPoint24)(r, prev);
84
84
  cmds.push([
85
85
  'BRUSH',
86
86
  drawMode,
@@ -89,20 +89,19 @@ exports.CodeHandlers = {
89
89
  texture,
90
90
  vec2_1.vec2.clone(prev),
91
91
  ]);
92
- while (br.peek32(8) < 0xf0) {
93
- texture = isTextured ? br.read32(8) >> 1 : 0;
94
- const next = (0, points_1.getPoint8)(br, vec2_1.vec2.create(), prev);
92
+ while (r.peek32(8) < 0xf0) {
93
+ texture = isTextured ? r.read32(8) >> 1 : 0;
94
+ const next = (0, points_1.getPoint8)(r, vec2_1.vec2.create(), prev);
95
95
  cmds.push(['BRUSH', drawMode, drawCodes, patternCode, texture, next]);
96
96
  vec2_1.vec2.copy(prev, next);
97
97
  }
98
- return cmds;
99
98
  },
100
- [op_codes_1.OpCode.MediumBrushes](br, { drawMode, drawCodes, patternCode }) {
101
- const cmds = [];
99
+ [op_codes_1.OpCode.MediumBrushes]({ r, state, cmds }) {
102
100
  const prev = vec2_1.vec2.create();
101
+ const { drawMode, drawCodes, patternCode } = state;
103
102
  const [, , isTextured] = patternCode;
104
- let texture = isTextured ? br.read32(8) >> 1 : 0;
105
- (0, points_1.getPoint24)(br, prev);
103
+ let texture = isTextured ? r.read32(8) >> 1 : 0;
104
+ (0, points_1.getPoint24)(r, prev);
106
105
  cmds.push([
107
106
  'BRUSH',
108
107
  drawMode,
@@ -111,98 +110,96 @@ exports.CodeHandlers = {
111
110
  texture,
112
111
  vec2_1.vec2.clone(prev),
113
112
  ]);
114
- while (br.peek32(8) < 0xf0) {
115
- texture = isTextured ? br.read32(8) >> 1 : 0;
116
- const next = (0, points_1.getPoint16)(br, vec2_1.vec2.create(), prev);
113
+ while (r.peek32(8) < 0xf0) {
114
+ texture = isTextured ? r.read32(8) >> 1 : 0;
115
+ const next = (0, points_1.getPoint16)(r, vec2_1.vec2.create(), prev);
117
116
  cmds.push(['BRUSH', drawMode, drawCodes, patternCode, texture, next]);
118
117
  vec2_1.vec2.copy(prev, next);
119
118
  }
120
- return cmds;
121
119
  },
122
- [op_codes_1.OpCode.LongBrushes](br, { drawMode, drawCodes, patternCode }) {
123
- const cmds = [];
120
+ [op_codes_1.OpCode.LongBrushes]({ r, state, cmds }) {
121
+ const { drawMode, drawCodes, patternCode } = state;
124
122
  const [, , isTextured] = patternCode;
125
- while (br.peek32(8) < 0xf0) {
126
- const texture = isTextured ? br.read32(8) >> 1 : 0;
127
- const pos = (0, points_1.getPoint24)(br, vec2_1.vec2.create());
123
+ while (r.peek32(8) < 0xf0) {
124
+ const texture = isTextured ? r.read32(8) >> 1 : 0;
125
+ const pos = (0, points_1.getPoint24)(r, vec2_1.vec2.create());
128
126
  cmds.push(['BRUSH', drawMode, drawCodes, patternCode, texture, pos]);
129
127
  }
130
- return cmds;
131
128
  },
132
129
  // Fills
133
- [op_codes_1.OpCode.Fills](br, { drawMode, drawCodes }) {
134
- const fills = [];
130
+ [op_codes_1.OpCode.Fills]({ r, state, cmds }) {
131
+ const { drawMode, drawCodes } = state;
135
132
  const p1 = vec2_1.vec2.create();
136
133
  while (true) {
137
- const peek = br.peek32(8);
134
+ const peek = r.peek32(8);
138
135
  if (peek >= 0xf0)
139
136
  break;
140
- (0, points_1.getPoint24)(br, p1);
141
- fills.push(['FILL', drawMode, drawCodes, vec2_1.vec2.clone(p1)]);
137
+ (0, points_1.getPoint24)(r, p1);
138
+ cmds.push(['FILL', drawMode, drawCodes, vec2_1.vec2.clone(p1)]);
142
139
  }
143
- return fills;
144
140
  },
145
- [op_codes_1.OpCode.XOp](br, state) {
146
- const opx = br.read32(8);
141
+ [op_codes_1.OpCode.XOp](ctx) {
142
+ const opx = ctx.r.read32(8);
147
143
  if (!(0, op_codes_1.isExtendedOpCode)(opx))
148
144
  throw new Error(`Unrecognized xopcode: 0x${opx.toString(16)}`);
149
- return ExtendedHandlers[opx](br, state);
145
+ ExtendedHandlers[opx](ctx);
150
146
  },
151
- [op_codes_1.OpCode.Done]: () => exports.IS_DONE,
152
147
  };
153
148
  const ExtendedHandlers = {
154
- [op_codes_1.ExtendedOpCode.UpdatePalette](br) {
149
+ [op_codes_1.ExtendedOpCode.UpdatePalette]({ r, cmds }) {
155
150
  const entries = [];
156
- while (br.peek32(8) < 0xf0) {
157
- const entry = br.read32(8);
151
+ while (r.peek32(8) < 0xf0) {
152
+ const entry = r.read32(8);
158
153
  const pal = (entry / 40) >>> 0;
159
154
  const idx = entry % 40;
160
- const code = br.read32(8);
155
+ const code = r.read32(8);
161
156
  entries.push([pal, idx, code]);
162
157
  }
163
- return [['UPDATE_PALETTE', entries]];
158
+ cmds.push(['UPDATE_PALETTE', entries]);
164
159
  },
165
- [op_codes_1.ExtendedOpCode.SetPalette](br) {
166
- const pal = br.read32(8);
160
+ [op_codes_1.ExtendedOpCode.SetPalette]({ r, cmds }) {
161
+ const pal = r.read32(8);
167
162
  const colors = new Uint8Array(40);
168
- (0, repeat_1.repeat)(40, (i) => (colors[i] = br.read32(8)));
169
- return [['SET_PALETTE', pal, colors]];
163
+ (0, repeat_1.repeat)(40, (i) => (colors[i] = r.read32(8)));
164
+ cmds.push(['SET_PALETTE', pal, colors]);
170
165
  },
171
- [op_codes_1.ExtendedOpCode.x02](br) {
166
+ [op_codes_1.ExtendedOpCode.x02]({ r }) {
172
167
  // Looks like a palette, but i'm not sure what this chunk is for
173
- br.skip(8);
174
- br.skip(8 * 40);
168
+ r.skip(8);
169
+ r.skip(8 * 40);
175
170
  // in Colonels Bequest Demo, PIC.991 this opcode appears to have a 141 byte payload.
176
171
  // Looks like another palette, but i'm not sure what this chunk is for
177
172
  // br.skip(141 * 8);
178
173
  },
179
- [op_codes_1.ExtendedOpCode.x03](br) {
174
+ [op_codes_1.ExtendedOpCode.x03]({ r }) {
180
175
  // Not sure what byte this is for
181
- br.skip(8);
176
+ r.skip(8);
182
177
  },
183
178
  [op_codes_1.ExtendedOpCode.x04]() {
184
179
  // Not sure what this code means
185
180
  // NOOP
186
181
  },
187
- [op_codes_1.ExtendedOpCode.x05](br) {
182
+ [op_codes_1.ExtendedOpCode.x05]({ r }) {
188
183
  // Not sure what byte this is for
189
- br.skip(8);
184
+ r.skip(8);
190
185
  },
191
186
  [op_codes_1.ExtendedOpCode.x06]() {
192
187
  // Not sure what this code means
193
188
  // NOOP
194
189
  },
195
- [op_codes_1.ExtendedOpCode.x07](br, state) {
196
- const pos = (0, points_1.getPoint24)(br, vec2_1.vec2.create());
197
- const size = br.read32(8) | (br.read32(8) << 8);
190
+ [op_codes_1.ExtendedOpCode.x07]({ r, state, cmds }) {
191
+ const pos = (0, points_1.getPoint24)(r, vec2_1.vec2.create());
192
+ const size = r.read32(8) | (r.read32(8) << 8);
198
193
  const buffer = new ArrayBuffer(size);
199
194
  const view = new DataView(buffer);
200
- (0, repeat_1.repeat)(size, (i) => view.setUint8(i, br.read32(8)));
195
+ (0, repeat_1.repeat)(size, (i) => {
196
+ view.setUint8(i, r.read32(8));
197
+ });
201
198
  const cel = (0, cel_1.parseCel)(view);
202
- return [['CEL', state.drawMode, pos, cel]];
199
+ cmds.push(['CEL', state.drawMode, pos, cel]);
203
200
  },
204
- [op_codes_1.ExtendedOpCode.x08](br) {
205
- (0, repeat_1.repeat)(14, () => br.read32(8));
201
+ [op_codes_1.ExtendedOpCode.x08]({ r }) {
202
+ (0, repeat_1.repeat)(14, () => r.read32(8));
206
203
  },
207
204
  };
208
205
  //# sourceMappingURL=handlers.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"handlers.js","sourceRoot":"","sources":["../../../src/parsers/pic/handlers.ts"],"names":[],"mappings":";;;AACA,yCAAsE;AAEtE,qCAA6D;AAC7D,4DAAkE;AAClE,4CAA+C;AAC/C,+CAA4C;AAC5C,gCAAkC;AAErB,QAAA,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;AAOzB,QAAA,YAAY,GAAgC;IACvD,CAAC,iBAAM,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,KAAK;QAC1B,MAAM,CAAC,EAAE,YAAY,EAAE,WAAW,CAAC,GAAG,KAAK,CAAC,SAAS,CAAC;QACtD,MAAM,UAAU,GAAG,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QAChC,KAAK,CAAC,SAAS,GAAG,CAAC,UAAU,EAAE,YAAY,EAAE,WAAW,CAAC,CAAC;QAC1D,KAAK,CAAC,QAAQ,IAAI,uBAAQ,CAAC,MAAM,CAAC;IACpC,CAAC;IACD,CAAC,iBAAM,CAAC,WAAW,CAAC,CAAC,EAAE,EAAE,KAAK;QAC5B,KAAK,CAAC,QAAQ,IAAI,CAAC,uBAAQ,CAAC,MAAM,CAAC;IACrC,CAAC;IAED,CAAC,iBAAM,CAAC,WAAW,CAAC,CAAC,EAAE,EAAE,KAAK;QAC5B,MAAM,CAAC,UAAU,EAAE,AAAD,EAAG,WAAW,CAAC,GAAG,KAAK,CAAC,SAAS,CAAC;QACpD,MAAM,YAAY,GAAG,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QAClC,KAAK,CAAC,SAAS,GAAG,CAAC,UAAU,EAAE,YAAY,EAAE,WAAW,CAAC,CAAC;QAC1D,KAAK,CAAC,QAAQ,IAAI,uBAAQ,CAAC,QAAQ,CAAC;IACtC,CAAC;IACD,CAAC,iBAAM,CAAC,aAAa,CAAC,CAAC,EAAE,EAAE,KAAK;QAC9B,KAAK,CAAC,QAAQ,IAAI,CAAC,uBAAQ,CAAC,QAAQ,CAAC;IACvC,CAAC;IAED,CAAC,iBAAM,CAAC,UAAU,CAAC,CAAC,EAAE,EAAE,KAAK;QAC3B,MAAM,CAAC,UAAU,EAAE,YAAY,CAAC,GAAG,KAAK,CAAC,SAAS,CAAC;QACnD,MAAM,WAAW,GAAG,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QACjC,KAAK,CAAC,SAAS,GAAG,CAAC,UAAU,EAAE,YAAY,EAAE,WAAW,CAAC,CAAC;QAC1D,KAAK,CAAC,QAAQ,IAAI,uBAAQ,CAAC,OAAO,CAAC;IACrC,CAAC;IACD,CAAC,iBAAM,CAAC,YAAY,CAAC,CAAC,EAAE,EAAE,KAAK;QAC7B,KAAK,CAAC,QAAQ,IAAI,CAAC,uBAAQ,CAAC,OAAO,CAAC;IACtC,CAAC;IAED,CAAC,iBAAM,CAAC,UAAU,CAAC,CAAC,EAAE,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE;QAC7C,MAAM,MAAM,GAAW,EAAE,CAAC;QAC1B,MAAM,IAAI,GAAG,IAAA,mBAAU,EAAC,EAAE,EAAE,WAAI,CAAC,MAAM,EAAE,CAAC,CAAC;QAC3C,MAAM,CAAC,IAAI,CAAC,WAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;QAC9B,OAAO,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,IAAI,EAAE,CAAC;YAC3B,MAAM,IAAI,GAAG,IAAA,kBAAS,EAAC,EAAE,EAAE,WAAI,CAAC,MAAM,EAAE,EAAE,IAAI,CAAC,CAAC;YAChD,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAClB,WAAI,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QACxB,CAAC;QACD,OAAO,CAAC,CAAC,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,MAAM,CAAC,CAAC,CAAC;IACrD,CAAC;IACD,CAAC,iBAAM,CAAC,WAAW,CAAC,CAAC,EAAE,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE;QAC9C,MAAM,MAAM,GAAW,EAAE,CAAC;QAC1B,MAAM,IAAI,GAAG,IAAA,mBAAU,EAAC,EAAE,EAAE,WAAI,CAAC,MAAM,EAAE,CAAC,CAAC;QAC3C,MAAM,CAAC,IAAI,CAAC,WAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;QAC9B,OAAO,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,IAAI,EAAE,CAAC;YAC3B,MAAM,IAAI,GAAG,IAAA,mBAAU,EAAC,EAAE,EAAE,WAAI,CAAC,MAAM,EAAE,EAAE,IAAI,CAAC,CAAC;YACjD,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAClB,WAAI,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QACxB,CAAC;QACD,OAAO,CAAC,CAAC,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,MAAM,CAAC,CAAC,CAAC;IACrD,CAAC;IACD,CAAC,iBAAM,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE;QAC5C,MAAM,MAAM,GAAW,EAAE,CAAC;QAC1B,MAAM,CAAC,IAAI,CAAC,IAAA,mBAAU,EAAC,EAAE,EAAE,WAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;QAC3C,OAAO,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,IAAI,EAAE,CAAC;YAC3B,MAAM,CAAC,IAAI,CAAC,IAAA,mBAAU,EAAC,EAAE,EAAE,WAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;QAC7C,CAAC;QACD,OAAO,CAAC,CAAC,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,MAAM,CAAC,CAAC,CAAC;IACrD,CAAC;IACD,WAAW;IACX,CAAC,iBAAM,CAAC,UAAU,CAAC,CAAC,EAAE,EAAE,KAAK;QAC3B,MAAM,IAAI,GAAG,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QAC1B,KAAK,CAAC,WAAW,GAAG;YAClB,IAAI,GAAG,OAAO;YACd,CAAC,IAAI,GAAG,QAAQ,CAAC,KAAK,CAAC;YACvB,CAAC,IAAI,GAAG,QAAQ,CAAC,KAAK,CAAC;SACxB,CAAC;IACJ,CAAC;IACD,CAAC,iBAAM,CAAC,YAAY,CAAC,CAAC,EAAE,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,WAAW,EAAE;QAC5D,MAAM,IAAI,GAAkB,EAAE,CAAC;QAC/B,MAAM,IAAI,GAAG,WAAI,CAAC,MAAM,EAAE,CAAC;QAC3B,MAAM,CAAC,EAAE,AAAD,EAAG,UAAU,CAAC,GAAG,WAAW,CAAC;QAErC,IAAI,OAAO,GAAW,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACzD,IAAA,mBAAU,EAAC,EAAE,EAAE,IAAI,CAAC,CAAC;QACrB,IAAI,CAAC,IAAI,CAAC;YACR,OAAO;YACP,QAAQ;YACR,SAAS;YACT,WAAW;YACX,OAAO;YACP,WAAI,CAAC,KAAK,CAAC,IAAI,CAAC;SACjB,CAAC,CAAC;QAEH,OAAO,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,IAAI,EAAE,CAAC;YAC3B,OAAO,GAAG,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAC7C,MAAM,IAAI,GAAG,IAAA,kBAAS,EAAC,EAAE,EAAE,WAAI,CAAC,MAAM,EAAE,EAAE,IAAI,CAAC,CAAC;YAChD,IAAI,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,WAAW,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC;YACtE,WAAI,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QACxB,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IACD,CAAC,iBAAM,CAAC,aAAa,CAAC,CAAC,EAAE,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,WAAW,EAAE;QAC7D,MAAM,IAAI,GAAkB,EAAE,CAAC;QAC/B,MAAM,IAAI,GAAG,WAAI,CAAC,MAAM,EAAE,CAAC;QAC3B,MAAM,CAAC,EAAE,AAAD,EAAG,UAAU,CAAC,GAAG,WAAW,CAAC;QAErC,IAAI,OAAO,GAAW,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACzD,IAAA,mBAAU,EAAC,EAAE,EAAE,IAAI,CAAC,CAAC;QACrB,IAAI,CAAC,IAAI,CAAC;YACR,OAAO;YACP,QAAQ;YACR,SAAS;YACT,WAAW;YACX,OAAO;YACP,WAAI,CAAC,KAAK,CAAC,IAAI,CAAC;SACjB,CAAC,CAAC;QAEH,OAAO,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,IAAI,EAAE,CAAC;YAC3B,OAAO,GAAG,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAC7C,MAAM,IAAI,GAAG,IAAA,mBAAU,EAAC,EAAE,EAAE,WAAI,CAAC,MAAM,EAAE,EAAE,IAAI,CAAC,CAAC;YACjD,IAAI,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,WAAW,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC;YACtE,WAAI,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QACxB,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IACD,CAAC,iBAAM,CAAC,WAAW,CAAC,CAAC,EAAE,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,WAAW,EAAE;QAC3D,MAAM,IAAI,GAAkB,EAAE,CAAC;QAC/B,MAAM,CAAC,EAAE,AAAD,EAAG,UAAU,CAAC,GAAG,WAAW,CAAC;QAErC,OAAO,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,IAAI,EAAE,CAAC;YAC3B,MAAM,OAAO,GAAG,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACnD,MAAM,GAAG,GAAG,IAAA,mBAAU,EAAC,EAAE,EAAE,WAAI,CAAC,MAAM,EAAE,CAAC,CAAC;YAC1C,IAAI,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,WAAW,EAAE,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC;QACvE,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,QAAQ;IACR,CAAC,iBAAM,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE;QACxC,MAAM,KAAK,GAAkB,EAAE,CAAC;QAChC,MAAM,EAAE,GAAG,WAAI,CAAC,MAAM,EAAE,CAAC;QACzB,OAAO,IAAI,EAAE,CAAC;YACZ,MAAM,IAAI,GAAG,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;YAC1B,IAAI,IAAI,IAAI,IAAI;gBAAE,MAAM;YACxB,IAAA,mBAAU,EAAC,EAAE,EAAE,EAAE,CAAC,CAAC;YACnB,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,WAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QAC5D,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,CAAC,iBAAM,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,KAAK;QACpB,MAAM,GAAG,GAAG,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QACzB,IAAI,CAAC,IAAA,2BAAgB,EAAC,GAAG,CAAC;YACxB,MAAM,IAAI,KAAK,CAAC,2BAA2B,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;QACjE,OAAO,gBAAgB,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;IAC1C,CAAC;IACD,CAAC,iBAAM,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC,eAAO;CAC7B,CAAC;AAEF,MAAM,gBAAgB,GAAwC;IAC5D,CAAC,yBAAc,CAAC,aAAa,CAAC,CAAC,EAAE;QAC/B,MAAM,OAAO,GAA+B,EAAE,CAAC;QAC/C,OAAO,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,IAAI,EAAE,CAAC;YAC3B,MAAM,KAAK,GAAG,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;YAC3B,MAAM,GAAG,GAAG,CAAC,KAAK,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC;YAC/B,MAAM,GAAG,GAAG,KAAK,GAAG,EAAE,CAAC;YAEvB,MAAM,IAAI,GAAG,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;YAC1B,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC;QACjC,CAAC;QAED,OAAO,CAAC,CAAC,gBAAgB,EAAE,OAAO,CAAC,CAAC,CAAC;IACvC,CAAC;IACD,CAAC,yBAAc,CAAC,UAAU,CAAC,CAAC,EAAE;QAC5B,MAAM,GAAG,GAAG,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QACzB,MAAM,MAAM,GAAG,IAAI,UAAU,CAAC,EAAE,CAAC,CAAC;QAClC,IAAA,eAAM,EAAC,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC9C,OAAO,CAAC,CAAC,aAAa,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC,CAAC;IACxC,CAAC;IACD,CAAC,yBAAc,CAAC,GAAG,CAAC,CAAC,EAAE;QACrB,gEAAgE;QAChE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACX,EAAE,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;QAEhB,oFAAoF;QACpF,sEAAsE;QACtE,oBAAoB;IACtB,CAAC;IACD,CAAC,yBAAc,CAAC,GAAG,CAAC,CAAC,EAAE;QACrB,iCAAiC;QACjC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACb,CAAC;IACD,CAAC,yBAAc,CAAC,GAAG,CAAC;QAClB,gCAAgC;QAChC,OAAO;IACT,CAAC;IACD,CAAC,yBAAc,CAAC,GAAG,CAAC,CAAC,EAAE;QACrB,iCAAiC;QACjC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACb,CAAC;IACD,CAAC,yBAAc,CAAC,GAAG,CAAC;QAClB,gCAAgC;QAChC,OAAO;IACT,CAAC;IACD,CAAC,yBAAc,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,KAAK;QAC5B,MAAM,GAAG,GAAG,IAAA,mBAAU,EAAC,EAAE,EAAE,WAAI,CAAC,MAAM,EAAE,CAAC,CAAC;QAC1C,MAAM,IAAI,GAAG,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;QAEhD,MAAM,MAAM,GAAG,IAAI,WAAW,CAAC,IAAI,CAAC,CAAC;QAErC,MAAM,IAAI,GAAG,IAAI,QAAQ,CAAC,MAAM,CAAC,CAAC;QAClC,IAAA,eAAM,EAAC,IAAI,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACpD,MAAM,GAAG,GAAG,IAAA,cAAQ,EAAC,IAAI,CAAC,CAAC;QAE3B,OAAO,CAAC,CAAC,KAAK,EAAE,KAAK,CAAC,QAAQ,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC;IAC7C,CAAC;IACD,CAAC,yBAAc,CAAC,GAAG,CAAC,CAAC,EAAE;QACrB,IAAA,eAAM,EAAC,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;IACjC,CAAC;CACF,CAAC"}
1
+ {"version":3,"file":"handlers.js","sourceRoot":"","sources":["../../../src/parsers/pic/handlers.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"parser.d.ts","sourceRoot":"","sources":["../../../src/parsers/pic/parser.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAExD,eAAO,MAAM,SAAS,SAAU,UAAU,KAAG,WAAW,EAqBvD,CAAC"}
1
+ {"version":3,"file":"parser.d.ts","sourceRoot":"","sources":["../../../src/parsers/pic/parser.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAExD,eAAO,MAAM,SAAS,SAAU,UAAU,KAAG,WAAW,EAsBvD,CAAC"}
@@ -6,23 +6,23 @@ const handlers_1 = require("./handlers");
6
6
  const op_codes_1 = require("./op-codes");
7
7
  const pic_state_1 = require("./pic-state");
8
8
  const parseFrom = (data) => {
9
- const commands = [];
10
- const br = (0, readers_1.createBitReader)(data, { mode: 'msb' });
11
- const state = (0, pic_state_1.createPicState)();
9
+ const ctx = {
10
+ r: (0, readers_1.createBitReader)(data, { mode: 'msb' }),
11
+ state: (0, pic_state_1.createPicState)(),
12
+ cmds: [],
13
+ };
12
14
  while (true) {
13
- const op = br.read32(8);
15
+ const op = ctx.r.read32(8);
14
16
  if (!(0, op_codes_1.isOpCode)(op))
15
17
  throw new Error(`Unrecognized opcode: 0x${op.toString(16)}`);
18
+ if (op === op_codes_1.OpCode.Done)
19
+ break;
16
20
  const handler = handlers_1.CodeHandlers[op];
17
21
  if (!handler)
18
22
  throw new Error(`Unhandled opcode: 0x${op.toString(16)}`);
19
- const next = handler(br, state);
20
- if (next === handlers_1.IS_DONE)
21
- break;
22
- if (next)
23
- commands.push(...next);
23
+ handler(ctx);
24
24
  }
25
- return commands;
25
+ return ctx.cmds;
26
26
  };
27
27
  exports.parseFrom = parseFrom;
28
28
  //# sourceMappingURL=parser.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"parser.js","sourceRoot":"","sources":["../../../src/parsers/pic/parser.ts"],"names":[],"mappings":";;;AAAA,+CAAoD;AACpD,yCAAmD;AACnD,yCAAsC;AACtC,2CAA6C;AAGtC,MAAM,SAAS,GAAG,CAAC,IAAgB,EAAiB,EAAE;IAC3D,MAAM,QAAQ,GAAkB,EAAE,CAAC;IAEnC,MAAM,EAAE,GAAG,IAAA,yBAAe,EAAC,IAAI,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;IAClD,MAAM,KAAK,GAAG,IAAA,0BAAc,GAAE,CAAC;IAE/B,OAAO,IAAI,EAAE,CAAC;QACZ,MAAM,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QAExB,IAAI,CAAC,IAAA,mBAAQ,EAAC,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CAAC,0BAA0B,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;QAE/D,MAAM,OAAO,GAAG,uBAAY,CAAC,EAAE,CAAC,CAAC;QACjC,IAAI,CAAC,OAAO;YAAE,MAAM,IAAI,KAAK,CAAC,uBAAuB,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;QAExE,MAAM,IAAI,GAAG,OAAO,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;QAChC,IAAI,IAAI,KAAK,kBAAO;YAAE,MAAM;QAC5B,IAAI,IAAI;YAAE,QAAQ,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC;IACnC,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC,CAAC;AArBW,QAAA,SAAS,aAqBpB"}
1
+ {"version":3,"file":"parser.js","sourceRoot":"","sources":["../../../src/parsers/pic/parser.ts"],"names":[],"mappings":";;;AAAA,+CAAoD;AACpD,yCAA8D;AAC9D,yCAA8C;AAC9C,2CAA6C;AAGtC,MAAM,SAAS,GAAG,CAAC,IAAgB,EAAiB,EAAE;IAC3D,MAAM,GAAG,GAAuB;QAC9B,CAAC,EAAE,IAAA,yBAAe,EAAC,IAAI,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;QACzC,KAAK,EAAE,IAAA,0BAAc,GAAE;QACvB,IAAI,EAAE,EAAE;KACT,CAAC;IAEF,OAAO,IAAI,EAAE,CAAC;QACZ,MAAM,EAAE,GAAG,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QAE3B,IAAI,CAAC,IAAA,mBAAQ,EAAC,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CAAC,0BAA0B,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;QAE/D,IAAI,EAAE,KAAK,iBAAM,CAAC,IAAI;YAAE,MAAM;QAE9B,MAAM,OAAO,GAAG,uBAAY,CAAC,EAAE,CAAC,CAAC;QACjC,IAAI,CAAC,OAAO;YAAE,MAAM,IAAI,KAAK,CAAC,uBAAuB,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;QAExE,OAAO,CAAC,GAAG,CAAC,CAAC;IACf,CAAC;IAED,OAAO,GAAG,CAAC,IAAI,CAAC;AAClB,CAAC,CAAC;AAtBW,QAAA,SAAS,aAsBpB"}
@@ -1 +1 @@
1
- {"version":3,"file":"render-pic.d.ts","sourceRoot":"","sources":["../../src/screen/render-pic.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAY,MAAM,wBAAwB,CAAC;AAC/D,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,UAAU,aAAa;IACrB,QAAQ,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC;CACtC;AAED,eAAO,MAAM,SAAS,aACV,WAAW,EAAE,YACd,aAAa,KACrB,YAyEF,CAAC"}
1
+ {"version":3,"file":"render-pic.d.ts","sourceRoot":"","sources":["../../src/screen/render-pic.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAgB,MAAM,wBAAwB,CAAC;AACnE,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAG/C,UAAU,aAAa;IACrB,QAAQ,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC;CACtC;AAED,eAAO,MAAM,SAAS,aACV,WAAW,EAAE,YACd,aAAa,KACrB,YAyEF,CAAC"}
@@ -4,6 +4,7 @@ exports.renderPic = void 0;
4
4
  const screen_buffer_1 = require("./screen-buffer");
5
5
  const default_palette_1 = require("./default-palette");
6
6
  const draw_command_1 = require("../models/draw-command");
7
+ const exhaustive_1 = require("../utils/exhaustive");
7
8
  const renderPic = (commands, options = {}) => {
8
9
  const { forcePal } = options;
9
10
  const palettes = [
@@ -47,7 +48,7 @@ const renderPic = (commands, options = {}) => {
47
48
  }
48
49
  case 'CEL': {
49
50
  const [, drawMode, pos, cel] = cmd;
50
- if ((drawMode & draw_command_1.DrawMode.Visual) !== draw_command_1.DrawMode.Visual)
51
+ if (!(0, draw_command_1.isVisualMode)(drawMode))
51
52
  continue;
52
53
  const data = cel.pixels;
53
54
  for (let y = pos[1]; y < pos[1] + cel.height; y++)
@@ -62,7 +63,7 @@ const renderPic = (commands, options = {}) => {
62
63
  break;
63
64
  }
64
65
  default:
65
- console.log(`unhandled opcode: ${mode}`);
66
+ (0, exhaustive_1.exhaustive)('unhandled opcode', mode);
66
67
  }
67
68
  }
68
69
  return result;
@@ -1 +1 @@
1
- {"version":3,"file":"render-pic.js","sourceRoot":"","sources":["../../src/screen/render-pic.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"render-pic.js","sourceRoot":"","sources":["../../src/screen/render-pic.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"screen-buffer.d.ts","sourceRoot":"","sources":["../../src/screen/screen-buffer.ts"],"names":[],"mappings":"AACA,OAAO,EAAwC,KAAK,MAAM,EAAE,MAAM,UAAU,CAAC;AAE7E,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAMpD,eAAO,MAAM,kBAAkB,aACnB,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,SAAS,YACzB,CAAC,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,CAAC,KACzD,CAAC,YAAY,EAAE,MAAM,CAmEvB,CAAC"}
1
+ {"version":3,"file":"screen-buffer.d.ts","sourceRoot":"","sources":["../../src/screen/screen-buffer.ts"],"names":[],"mappings":"AACA,OAAO,EAAwC,KAAK,MAAM,EAAE,MAAM,UAAU,CAAC;AAM7E,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAMpD,eAAO,MAAM,kBAAkB,aACnB,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,SAAS,YACzB,CAAC,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,CAAC,KACzD,CAAC,YAAY,EAAE,MAAM,CAgEvB,CAAC"}
@@ -20,24 +20,23 @@ const createScreenBuffer = (forcePal, palettes) => {
20
20
  };
21
21
  const plot = (x, y, drawMode, drawCodes) => {
22
22
  const idx = bufferWidth * y + x;
23
- if ((drawMode & draw_command_1.DrawMode.Visual) === draw_command_1.DrawMode.Visual) {
23
+ if ((0, draw_command_1.isVisualMode)(drawMode)) {
24
24
  const pal = forcePal !== null && forcePal !== void 0 ? forcePal : (drawCodes[0] / 40) >>> 0;
25
25
  const palette = palettes[pal];
26
26
  const palIndex = drawCodes[0] % 40 >>> 0;
27
27
  visible.pixels[idx] = palette[palIndex];
28
28
  alpha.pixels[idx] = 255;
29
29
  }
30
- if ((drawMode & draw_command_1.DrawMode.Priority) === draw_command_1.DrawMode.Priority) {
30
+ if ((0, draw_command_1.isPriorityMode)(drawMode)) {
31
31
  priority.pixels[idx] = drawCodes[1];
32
32
  }
33
- if ((drawMode & draw_command_1.DrawMode.Control) === draw_command_1.DrawMode.Control) {
33
+ if ((0, draw_command_1.isControlMode)(drawMode)) {
34
34
  control.pixels[idx] = drawCodes[2];
35
35
  }
36
36
  };
37
37
  const isFillable = (x, y, drawMode) => {
38
38
  const idx = x + y * bufferWidth;
39
- const isVisible = (drawMode & draw_command_1.DrawMode.Visual) === draw_command_1.DrawMode.Visual;
40
- if (isVisible) {
39
+ if ((0, draw_command_1.isVisualMode)(drawMode)) {
41
40
  const dither = (x & 1) ^ (y & 1);
42
41
  const val = visible.pixels[idx];
43
42
  return 0xf === (dither ? val & 0xf : val >>> 4);
@@ -47,10 +46,8 @@ const createScreenBuffer = (forcePal, palettes) => {
47
46
  * replaced 0x00 pixels in control and priority layers. Not sure if its intentional or not. But
48
47
  * may require a different way of modeling indexed "alpha" channel.
49
48
  */
50
- const isPriority = (drawMode & draw_command_1.DrawMode.Priority) === draw_command_1.DrawMode.Priority;
51
- const isControl = (drawMode & draw_command_1.DrawMode.Control) === draw_command_1.DrawMode.Control;
52
- return ((isPriority && priority.pixels[idx] === 0x00) ||
53
- (isControl && control.pixels[idx] === 0x00));
49
+ return (((0, draw_command_1.isPriorityMode)(drawMode) && priority.pixels[idx] === 0x00) ||
50
+ ((0, draw_command_1.isControlMode)(drawMode) && control.pixels[idx] === 0x00));
54
51
  };
55
52
  return [
56
53
  { visible, priority, control, alpha },
@@ -1 +1 @@
1
- {"version":3,"file":"screen-buffer.js","sourceRoot":"","sources":["../../src/screen/screen-buffer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"screen-buffer.js","sourceRoot":"","sources":["../../src/screen/screen-buffer.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export declare function exhaustive(msg: string, _: never): never;
2
+ //# sourceMappingURL=exhaustive.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"exhaustive.d.ts","sourceRoot":"","sources":["../../src/utils/exhaustive.ts"],"names":[],"mappings":"AAAA,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,CAAC,EAAE,KAAK,GAAG,KAAK,CAEvD"}
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.exhaustive = void 0;
4
+ function exhaustive(msg, _) {
5
+ throw new Error(`${msg}: ${JSON.stringify(_)}`);
6
+ }
7
+ exports.exhaustive = exhaustive;
8
+ //# sourceMappingURL=exhaustive.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"exhaustive.js","sourceRoot":"","sources":["../../src/utils/exhaustive.ts"],"names":[],"mappings":";;;AAAA,SAAgB,UAAU,CAAC,GAAW,EAAE,CAAQ;IAC9C,MAAM,IAAI,KAAK,CAAC,GAAG,GAAG,KAAK,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;AAClD,CAAC;AAFD,gCAEC"}
@@ -1 +1 @@
1
- {"version":3,"file":"repeat.d.ts","sourceRoot":"","sources":["../../src/utils/repeat.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,MAAM,SAAU,MAAM,UAAU,MAAM,KAAK,CAAC,KAAG,CAAC,EAGpC,CAAC"}
1
+ {"version":3,"file":"repeat.d.ts","sourceRoot":"","sources":["../../src/utils/repeat.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,MAAM,SAAU,MAAM,MAAM,CAAC,CAAC,EAAE,MAAM,KAAK,CAAC,KAAG,CAAC,EAGpC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@4bitlabs/sci0",
3
- "version": "2.4.6",
3
+ "version": "2.5.1",
4
4
  "description": "Library for parsing and rendering assets from Sierra On-line's SCI-engine.",
5
5
  "main": "./dist/index.js",
6
6
  "types": "./dist/index.d.ts",
@@ -24,9 +24,9 @@
24
24
  "author": "J. Holmes <j@holmes.codes>",
25
25
  "license": "ISC",
26
26
  "dependencies": {
27
- "@4bitlabs/codecs": "^1.0.4",
28
- "@4bitlabs/image": "^3.3.6",
29
- "@4bitlabs/numeric-deque": "^1.1.3",
30
- "@4bitlabs/readers": "^2.0.4"
27
+ "@4bitlabs/codecs": "^2.0.1",
28
+ "@4bitlabs/image": "^3.3.8",
29
+ "@4bitlabs/numeric-deque": "^1.1.4",
30
+ "@4bitlabs/readers": "^2.0.5"
31
31
  }
32
32
  }