home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / top2src.zip / GAMES.ZIP / OLDPOKER.ZIP / OLDPK_IO.C < prev    next >
C/C++ Source or Header  |  1995-03-09  |  3KB  |  98 lines

  1. #include "top.h"
  2.  
  3. void poker_loadplyrdata(XINT nodenum, poker_player_typ *loaddata)
  4. {
  5.  
  6. lseek(pokdatafil, (long) (nodenum + 1L) * (long) sizeof(poker_player_typ),
  7.       SEEK_SET);
  8. rec_locking(REC_LOCK, pokdatafil,
  9.             (long) (nodenum + 1L) * (long) sizeof(poker_player_typ),
  10.             sizeof(poker_player_typ));
  11. read(pokdatafil, loaddata, sizeof(poker_player_typ));
  12. rec_locking(REC_UNLOCK, pokdatafil,
  13.             (long) (nodenum + 1L) * (long) sizeof(poker_player_typ),
  14.             sizeof(poker_player_typ));
  15.  
  16. return;
  17. }
  18.  
  19. void poker_saveplyrdata(XINT nodenum, poker_player_typ *savedata)
  20. {
  21.  
  22. lseek(pokdatafil, (long) (nodenum + 1L) * (long) sizeof(poker_player_typ),
  23.       SEEK_SET);
  24. rec_locking(REC_LOCK, pokdatafil,
  25.             (long) (nodenum + 1L) * (long) sizeof(poker_player_typ),
  26.             sizeof(poker_player_typ));
  27. write(pokdatafil, savedata, sizeof(poker_player_typ));
  28. rec_locking(REC_UNLOCK, pokdatafil,
  29.             (long) (nodenum + 1L) * (long) sizeof(poker_player_typ),
  30.             sizeof(poker_player_typ));
  31.  
  32. return;
  33. }
  34.  
  35. void poker_loadgamedata(poker_game_typ *loaddata)
  36. {
  37.  
  38. lseek(pokdatafil, 0L, SEEK_SET);
  39. rec_locking(REC_LOCK, pokdatafil, 0L, sizeof(poker_game_typ));
  40. read(pokdatafil, loaddata, sizeof(poker_game_typ));
  41. rec_locking(REC_UNLOCK, pokdatafil, 0L, sizeof(poker_game_typ));
  42.  
  43. return;
  44. }
  45.  
  46. void poker_savegamedata(poker_game_typ *savedata)
  47. {
  48.  
  49. lseek(pokdatafil, 0L, SEEK_SET);
  50. rec_locking(REC_LOCK, pokdatafil, 0L, sizeof(poker_game_typ));
  51. write(pokdatafil, savedata, sizeof(poker_game_typ));
  52. rec_locking(REC_UNLOCK, pokdatafil, 0L, sizeof(poker_game_typ));
  53.  
  54. return;
  55. }
  56.  
  57. void poker_loadintable(long start, char loadtype, char *dataptr)
  58. {
  59. long ofs, size;
  60.  
  61. switch(loadtype)
  62.     {
  63.     case 0: ofs = 0L; size = MAXNODES; break;       /* Entire "want in" */
  64.     case 1: ofs = 0L; size = 1L; break;             /* One "want in" */
  65.     case 2: ofs = MAXNODES; size = MAXNODES; break; /* Entire "is in" */
  66.     case 3: ofs = MAXNODES; size = 1L; break;       /* One "is in" */
  67.     }
  68. start += ((long) MAXNODES + 1L) * (long) sizeof(poker_game_typ);
  69.  
  70. lseek(pokdatafil, start + ofs, SEEK_SET);
  71. rec_locking(REC_LOCK, pokdatafil, start + ofs, size);
  72. read(pokdatafil, dataptr, size);
  73. rec_locking(REC_UNLOCK, pokdatafil, start + ofs, size);
  74.  
  75. return;
  76. }
  77.  
  78. void poker_saveintable(long start, char savetype, char *dataptr)
  79. {
  80. long ofs, size;
  81.  
  82. switch(savetype)
  83.     {
  84.     case 0: ofs = 0L; size = MAXNODES; break;       /* Entire "want in" */
  85.     case 1: ofs = 0L; size = 1L; break;             /* One "want in" */
  86.     case 2: ofs = MAXNODES; size = MAXNODES; break; /* Entire "is in" */
  87.     case 3: ofs = MAXNODES; size = 1L; break;       /* One "is in" */
  88.     }
  89. start += ((long) MAXNODES + 1L) * (long) sizeof(poker_game_typ);
  90.  
  91. lseek(pokdatafil, start + ofs, SEEK_SET);
  92. rec_locking(REC_LOCK, pokdatafil, start + ofs, size);
  93. write(pokdatafil, dataptr, size);
  94. rec_locking(REC_UNLOCK, pokdatafil, start + ofs, size);
  95.  
  96. return;
  97. }
  98.