Ви не можете вибрати більше 25 тем Теми мають розпочинатися з літери або цифри, можуть містити дефіси (-) і не повинні перевищувати 35 символів.

47 рядки
1.2KB

  1. /* vml.c - GENERATED by build-ml.ps1 from vrow.s. Do not edit by hand.
  2. *
  3. * The machine code row painter, kept as a byte array and called in place
  4. * through sys(). It is position independent; its parameters go through zero
  5. * page scratch $22-$28, which Power C leaves to ML routines.
  6. */
  7. char mlcode[76] = {
  8. 165, 40, 9, 32, 160, 39, 145, 37, 136, 16, 251, 160,
  9. 0, 196, 36, 240, 45, 177, 34, 201, 32, 176, 2, 169,
  10. 32, 201, 192, 144, 4, 233, 128, 176, 22, 201, 160, 144,
  11. 4, 233, 64, 176, 14, 201, 96, 144, 4, 233, 32, 176,
  12. 6, 201, 64, 144, 2, 233, 64, 5, 40, 145, 37, 200,
  13. 208, 207, 165, 39, 201, 255, 240, 7, 168, 177, 37, 73,
  14. 128, 145, 37, 96
  15. };
  16. /* nothing to install: the code runs where the array sits */
  17. mlinit()
  18. {
  19. return 0;
  20. }
  21. /* paint the screen row at address dst: len bytes from src, cursor at column cur
  22. (255 = none), rev = 128 for an all reverse row */
  23. mlrow(src, len, dst, cur, rev)
  24. unsigned src, dst;
  25. int len, cur, rev;
  26. {
  27. char *p;
  28. char a, x, y;
  29. p = (char *) 0x22;
  30. p[0] = src & 255;
  31. p[1] = src >> 8;
  32. p[2] = len;
  33. p[3] = dst & 255;
  34. p[4] = dst >> 8;
  35. p[5] = cur;
  36. p[6] = rev;
  37. a = 0;
  38. x = 0;
  39. y = 0;
  40. sys(15, (unsigned) mlcode, &a, &x, &y);
  41. return 0;
  42. }

Powered by TurnKey Linux.