state.h 974 B

12345678910111213141516171819202122232425262728
  1. /****************************************************************************
  2. * dcc project header
  3. * (C) Cristina Cifuentes, Mike van Emmerik
  4. ****************************************************************************/
  5. /* STATE TABLE */
  6. struct STATE
  7. {
  8. dword IP; /* Offset into Image */
  9. int16 r[INDEXBASE]; /* Value of segs and AX */
  10. byte f[INDEXBASE]; /* True if r[.] has a value */
  11. struct
  12. { /* For case stmt indexed reg */
  13. byte regi; /* Last conditional jump */
  14. int16 immed; /* Contents of the previous register */
  15. } JCond;
  16. void setState(word reg, int16 value);
  17. public:
  18. void checkStartup();
  19. STATE() : IP(0)
  20. {
  21. JCond.immed=0;
  22. memset(r,0,sizeof(int16)*INDEXBASE);
  23. memset(f,0,sizeof(byte)*INDEXBASE);
  24. }
  25. };