123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423 |
- short mem[0x1000];
- #define v_0341 mem[0x0341]
- #define v_0343 mem[0x0343]
- #define v_0344 mem[0x0344]
- #define v_0345 mem[0x0345]
- #define a_0346 mem[0x0346]
- #define v_034e mem[0x034e]
- #define v_0350 mem[0x0350]
- #define v_0351 mem[0x0351]
- #define v_0352 mem[0x0352]
- #define v_0355 mem[0x0355]
- #define a_0356 (mem+0x0356)
- #define a_0388 (mem+0x388)
- #define a_038e (mem+0x38e)
- #define a_03a8 (mem+0x3a8)
- #define v_03fa mem[0x03fa]
- #define v_03fb mem[0x03fb]
- #define v_03fc mem[0x03fc]
- #define v_03fd mem[0x03fd]
- #define v_03fe mem[0x03fe]
- #define v_03ff mem[0x03ff]
- #define a_04e8 (mem+0x04e8)
- #define a_04ec (mem+0x04ec)
- #define a_04f0 (mem+0x04f0)
- #define a_04f4 (mem+0x04f4)
- #define a_04fc (mem+0x04fc)
- #define a_09a0 (mem+0x09a0)
- #define a_0a00 (mem+0x0a00)
- #define a_0b00 (mem+0x0b00)
- #define a_0ca0 (mem+0x0ca0)
- #define a_0d00 (mem+0x0d00)
- #define a_0d60 (mem+0x0d60)
- #define a_0f40 (mem+0x0f40)
- void main() {
-
-
- SBCLR(5);
- fcn_0057();
- for(ac1.m=0x1000,ac0.m=0;ac1.m>0;ac1.m--) mem[ac0.m++]=0;
- fcn_0688();
- fcn_04c0();
- fcn_0e14();
- fcn_066a(0);
- fcn_0674(0x1111);
- v_034e=0;
- SBSET(5);
-
- mainloop:
- while (v_0352) ;
-
- SBCLR(5);
- v_0352--;
- SBSET(5);
-
- t=v_0351;
- size=mem[t++];
- if (!(size&0x8000)) {
- if (size==0) {
-
-
-
-
- HALT();
- }
- for (i=size,j=0;i>0;i--) {
- a_0356[j++]=mem[t++];
- a_0356[j++]=mem[t++];
- }
- v_0351=t;
-
-
-
- v_0345=a_0356[1];
- v_0344=a_0356[0]&0x00ff;
- v_0343=(a_0346[0]>>7)&0x7e;
-
-
- switch (v_0343>>1) {
-
- case 0:
- case 10:
- case 11:
- case 12:
- case 14:
- case 15:
-
- config=0x00ff;
- fcn_066a(0x04);
- fcn_0674(a_0356[0]);
- goto mainloop;
- break;
- case 1:
-
- break;
- case 2:
-
- sub_0243();
- break;
- case 3:
-
- break;
- case 4:
-
- break;
- case 5:
-
- break;
- case 6:
-
- break;
- case 7:
-
- break;
- case 8:
-
- fcn_0067(fcn_0067(0x0346));
-
- fcn_0525(mem[0x344],mem[0x346],mem[0x347],0x400);
- fcn_0525(mem[0x344],mem[0x348],mem[0x349],0x800);
- S16();
-
- i=mem[0x0344];
- src1=0x400;
- src2=0x800;
- scale=mem[0x345];
-
- prod=scale*mem[src2++];
- val2=mem[src2++];
- do {
- val1=mem[src1];
- val1+=prod;
- prod=scale*val2;
- mem[src1]=val1;
- val2=mem[src2];
- src1++;
- src2++;
- } while (--i);
-
- S40();
-
-
- fcn_0523(mem[0x344],mem[0x346],mem[0x347],0x400);
-
- break;
- case 9:
-
- break;
- case 13:
-
- break;
- }
- }
-
- v_0351=t;
-
- goto mainloop;
- }
- void exception() {
-
-
- SBCLR(5);
- S40();
-
-
- if ((tH=register_fffe)&0x8000) {
- if (!(tsize=register_ffff)) {
-
- while (!((tH=register_fffe)&0x8000)) ;
- tH&=0xf;
- v_034e=(tH+1)<<4;
- a_04fc[tH]=register_ffff;
- } else {
-
-
- t=v_0350;
- mem[t++]=tsize;
-
- do {
- while (!((tH=register_fffe)&0x8000)) ;
- mem[t++]=tH;
- mem[t++]=register_ffff;
- } while (--tsize);
-
- v_0350=t;
- v_0352++;
-
-
-
- }
- } else {
-
-
- mem[v_0350]=0;
-
- v_0350++;
- v_0352++;
-
-
-
- }
-
-
-
-
- SBSET(5);
-
- }
- void fcn_0057() {
- SBCLR(2);
- SBCLR(3);
- SBCLR(4);
- SBCLR(6);
- S40();
- CLR15();
- M0();
- r08=-1;
- r09=-1;
- r0a=-1;
- r0b=-1;
- config=0xff;
- }
- void fcn_0688() {
- v_0350=0x0280;
- v_0351=0x0280;
- v_0352=0;
- }
- void fcn_04c0() {
- config=0xff;
- for(i=0xff,ar0=0xb00;i>0;i--) mem[ar0++]=0;
- mem[ar0++]=0;
- fcn_0573(0x0b00,0x0100,0);
- }
- void fcn_0573(short a, short l, short v) {
- fcn_0561(a,l,0x0001);
- }
- short fcn_0561(short a, short l, short v, short f) {
- register_ffd1=0x0a;
- register_ffd6=-1;
- register_ffd7=-1;
- register_ffd8=v>>1;
|