/[gxemul]/trunk/src/devices/dev_jazz.c
This is repository of my old source code which isn't updated any more. Go to git.rot13.org for current projects!
ViewVC logotype

Diff of /trunk/src/devices/dev_jazz.c

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 4 by dpavlin, Mon Oct 8 16:18:00 2007 UTC revision 20 by dpavlin, Mon Oct 8 16:19:23 2007 UTC
# Line 25  Line 25 
25   *  SUCH DAMAGE.   *  SUCH DAMAGE.
26   *     *  
27   *   *
28   *  $Id: dev_jazz.c,v 1.18 2005/04/04 21:50:04 debug Exp $   *  $Id: dev_jazz.c,v 1.20 2005/11/13 00:14:09 debug Exp $
29   *     *  
30   *  Microsoft Jazz-related stuff (Acer PICA-61, etc).   *  Microsoft Jazz-related stuff (Acer PICA-61, etc).
31   */   */
# Line 169  int dev_jazz_access(struct cpu *cpu, str Line 169  int dev_jazz_access(struct cpu *cpu, str
169          uint64_t idata = 0, odata = 0;          uint64_t idata = 0, odata = 0;
170          int regnr;          int regnr;
171    
172          idata = memory_readmax64(cpu, data, len);          if (writeflag == MEM_WRITE)
173                    idata = memory_readmax64(cpu, data, len);
174    
175          regnr = relative_addr / sizeof(uint32_t);          regnr = relative_addr / sizeof(uint32_t);
176    
177          switch (relative_addr) {          switch (relative_addr) {
# Line 304  int dev_jazz_led_access(struct cpu *cpu, Line 306  int dev_jazz_led_access(struct cpu *cpu,
306          uint64_t idata = 0, odata = 0;          uint64_t idata = 0, odata = 0;
307          int regnr;          int regnr;
308    
309          idata = memory_readmax64(cpu, data, len);          if (writeflag == MEM_WRITE)
310                    idata = memory_readmax64(cpu, data, len);
311    
312          regnr = relative_addr / sizeof(uint32_t);          regnr = relative_addr / sizeof(uint32_t);
313    
314          switch (relative_addr) {          switch (relative_addr) {
# Line 347  int dev_jazz_access_a0(struct cpu *cpu, Line 351  int dev_jazz_access_a0(struct cpu *cpu,
351          struct jazz_data *d = (struct jazz_data *) extra;          struct jazz_data *d = (struct jazz_data *) extra;
352          uint64_t idata = 0, odata = 0;          uint64_t idata = 0, odata = 0;
353    
354          idata = memory_readmax64(cpu, data, len);          if (writeflag == MEM_WRITE)
355          odata = 0;                  idata = memory_readmax64(cpu, data, len);
356    
357          switch (relative_addr) {          switch (relative_addr) {
358          case 0:          case 0:
# Line 400  int dev_jazz_access_20(struct cpu *cpu, Line 404  int dev_jazz_access_20(struct cpu *cpu,
404          struct jazz_data *d = (struct jazz_data *) extra;          struct jazz_data *d = (struct jazz_data *) extra;
405          uint64_t idata = 0, odata = 0;          uint64_t idata = 0, odata = 0;
406    
407          idata = memory_readmax64(cpu, data, len);          if (writeflag == MEM_WRITE)
408          odata = 0;                  idata = memory_readmax64(cpu, data, len);
409    
410          switch (relative_addr) {          switch (relative_addr) {
411          case 0:          case 0:
# Line 455  int dev_jazz_access_jazzio(struct cpu *c Line 459  int dev_jazz_access_jazzio(struct cpu *c
459          uint64_t idata = 0, odata = 0;          uint64_t idata = 0, odata = 0;
460          int i, v;          int i, v;
461    
462          idata = memory_readmax64(cpu, data, len);          if (writeflag == MEM_WRITE)
463                    idata = memory_readmax64(cpu, data, len);
464    
465          switch (relative_addr) {          switch (relative_addr) {
466          case 0:          case 0:
# Line 515  int devinit_jazz(struct devinit *devinit Line 520  int devinit_jazz(struct devinit *devinit
520    
521          memory_device_register(devinit->machine->memory, "jazz",          memory_device_register(devinit->machine->memory, "jazz",
522              devinit->addr, DEV_JAZZ_LENGTH,              devinit->addr, DEV_JAZZ_LENGTH,
523              dev_jazz_access, (void *)d, MEM_DEFAULT, NULL);              dev_jazz_access, (void *)d, DM_DEFAULT, NULL);
524    
525          /*  At least for Magnum and Pica-61:  */          /*  At least for Magnum and Pica-61:  */
526          memory_device_register(devinit->machine->memory, "jazz_led",          memory_device_register(devinit->machine->memory, "jazz_led",
527              0x08000f000ULL, 4, dev_jazz_led_access, (void *)d,              0x08000f000ULL, 4, dev_jazz_led_access, (void *)d,
528              MEM_DEFAULT, NULL);              DM_DEFAULT, NULL);
529    
530          memory_device_register(devinit->machine->memory, "jazz_isa_20",          memory_device_register(devinit->machine->memory, "jazz_isa_20",
531              0x90000020ULL, 2, dev_jazz_access_20, (void *)d, MEM_DEFAULT, NULL);              0x90000020ULL, 2, dev_jazz_access_20, (void *)d, DM_DEFAULT, NULL);
532    
533          memory_device_register(devinit->machine->memory, "jazz_isa_a0",          memory_device_register(devinit->machine->memory, "jazz_isa_a0",
534              0x900000a0ULL, 2, dev_jazz_access_a0, (void *)d, MEM_DEFAULT, NULL);              0x900000a0ULL, 2, dev_jazz_access_a0, (void *)d, DM_DEFAULT, NULL);
535    
536          memory_device_register(devinit->machine->memory, "pica_jazzio",          memory_device_register(devinit->machine->memory, "pica_jazzio",
537              0xf0000000ULL, 4, dev_jazz_access_jazzio, (void *)d,              0xf0000000ULL, 4, dev_jazz_access_jazzio, (void *)d,
538              MEM_DEFAULT, NULL);              DM_DEFAULT, NULL);
539    
540          machine_add_tickfunction(devinit->machine, dev_jazz_tick,          machine_add_tickfunction(devinit->machine, dev_jazz_tick,
541              d, DEV_JAZZ_TICKSHIFT);              d, DEV_JAZZ_TICKSHIFT);

Legend:
Removed from v.4  
changed lines
  Added in v.20

  ViewVC Help
Powered by ViewVC 1.1.26