~ubuntu-branches/ubuntu/raring/simh/raring

« back to all changes in this revision

Viewing changes to PDP18B/pdp18b_rp.c

  • Committer: Bazaar Package Importer
  • Author(s): Vince Mulhollon
  • Date: 2007-04-13 20:16:15 UTC
  • mfrom: (1.1.7 upstream) (2.1.3 lenny)
  • Revision ID: james.westby@ubuntu.com-20070413201615-jiar46bgkrs0dw2h
Tags: 3.7.0-1
* New upstream released 03-Feb-2007
* i7094 added which emulates the IBM 7090/7094
* Upstream has converted almost entirely to pdf format for docs
* All manpages updated
* All docs are registered with the doc-base system

Show diffs side-by-side

added added

removed removed

Lines of Context:
46
46
#define RP_NUMSF        20                              /* surfaces/cylinder */
47
47
#define RP_NUMCY        203                             /* cylinders/drive */
48
48
#define RP_NUMDR        8                               /* drives/controller */
49
 
#define RP_SIZE (RP_NUMCY * RP_NUMSF * RP_NUMSC * RP_NUMWD)  /* words/drive */
 
49
#define RP_SIZE         (RP_NUMCY * RP_NUMSF * RP_NUMSC * RP_NUMWD)
 
50
                                                        /* words/drive */
50
51
 
51
52
/* Unit specific flags */
52
53
 
262
263
    if (sb == 020) dat = IOT_SKP | dat;                 /* DPSN */
263
264
    }
264
265
if (pulse & 02) {
265
 
    if (sb == 000) dat = dat | rp_unit[GET_UNIT (rp_sta)].CYL; /* DPOU */
 
266
    if (sb == 000)                                      /* DPOU */
 
267
        dat = dat | rp_unit[GET_UNIT (rp_sta)].CYL;
266
268
    else if (sb == 020) dat = dat | rp_da;              /* DPOA */
267
269
    else if (sb == 040) dat = dat | rp_ma;              /* DPOC */
268
270
    else if (sb == 060) dat = dat | rp_wc;              /* DPOW */
272
274
        rp_updsta (0, STB_PGE);
273
275
        return dat;
274
276
        }
275
 
    if (sb == 000) rp_sta = rp_sta & ~STA_RW;           /* DPCF */
276
 
    else if (sb == 020) rp_sta = rp_sta & (dat | ~STA_RW); /* DPLZ */
277
 
    else if (sb == 040) rp_sta = rp_sta | (dat & STA_RW);  /* DPLO */
 
277
    if (sb == 000)                                      /* DPCF */
 
278
        rp_sta = rp_sta & ~STA_RW;
 
279
    else if (sb == 020)                                 /* DPLZ */
 
280
        rp_sta = rp_sta & (dat | ~STA_RW);
 
281
    else if (sb == 040)                                 /* DPLO */
 
282
         rp_sta = rp_sta | (dat & STA_RW);
278
283
    else if (sb == 060)                                 /* DPLF */
279
284
        rp_sta = (rp_sta & ~STA_RW) | (dat & STA_RW);
280
285
    rp_sta = rp_sta & ~STA_DON;                         /* clear done */