ViewVC Help
View File | Revision Log | Show Annotations | Revision Graph | Root Listing
root/cebix/BasiliskII/src/emul_op.cpp
(Generate patch)

Comparing BasiliskII/src/emul_op.cpp (file contents):
Revision 1.14 by cebix, 2000-06-23T14:22:45Z vs.
Revision 1.15 by cebix, 2000-07-14T21:29:08Z

# Line 413 | Line 413 | void EmulOp(uint16 opcode, M68kRegisters
413  
414                  case M68K_EMUL_OP_IRQ:                  // Level 1 interrupt
415                          r->d[0] = 0;
416 +
417                          if (InterruptFlags & INTFLAG_60HZ) {
418                                  ClearInterruptFlag(INTFLAG_60HZ);
419                                  if (HasMacStarted()) {
# Line 421 | Line 422 | void EmulOp(uint16 opcode, M68kRegisters
422                                          ADBInterrupt();
423                                          TimerInterrupt();
424                                          VideoInterrupt();
424                                        SonyInterrupt();
425                                        DiskInterrupt();
426                                        CDROMInterrupt();
425  
426                                          // Call DoVBLTask(0)
427                                          if (ROMVersion == ROM_VERSION_32) {
# Line 435 | Line 433 | void EmulOp(uint16 opcode, M68kRegisters
433                                          r->d[0] = 1;                    // Flag: 68k interrupt routine executes VBLTasks etc.
434                                  }
435                          }
436 +
437 +                        if (InterruptFlags & INTFLAG_1HZ) {
438 +                                ClearInterruptFlag(INTFLAG_1HZ);
439 +
440 +                                if (HasMacStarted()) {
441 +                                        SonyInterrupt();
442 +                                        DiskInterrupt();
443 +                                        CDROMInterrupt();
444 +                                }
445 +                        }
446 +
447                          if (InterruptFlags & INTFLAG_SERIAL) {
448                                  ClearInterruptFlag(INTFLAG_SERIAL);
449                                  SerialInterrupt();
450                          }
451 +
452                          if (InterruptFlags & INTFLAG_ETHER) {
453                                  ClearInterruptFlag(INTFLAG_ETHER);
454                                  EtherInterrupt();
455                          }
456 +
457                          if (InterruptFlags & INTFLAG_AUDIO) {
458                                  ClearInterruptFlag(INTFLAG_AUDIO);
459                                  AudioInterrupt();

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines