Commit Graph

57 Commits

Author SHA1 Message Date
Miodrag Milanovic
de513a0f98 reverting, sorry for this vconv needs to be updated (nw) 2014-03-31 10:23:22 +00:00
Miodrag Milanovic
2cc9ca4c5e VS2013 x64 is little bit more anal about signed/unsigned comparison (nw) 2014-03-31 10:06:05 +00:00
Aaron Giles
4ea9df02a1 Moved core template container classes up from emutempl.h to coretmpl.h:
[Aaron Giles]
 * these classes now no longer take a resource_pool; everything is
    managed globally -- this means that objects added to lists must be
    allocated with global_alloc
 * added new auto_pointer<> template which wraps a pointer and auto-frees
    it upon destruction; it also defaults to NULL so it doesn't need to
    be explicitly initialized
 * moved tagged_list template to tagmap.h

Redo of the low-level memory tracking system: [Aaron Giles]
 * moved low-level tracking out of emu\emualloc into lib\util\corealloc
    so it can be shared among all components and used by core libraries
 * global_alloc and friends no longer use a resource pool to track
    allocations; turns out this was a wholly redundant system that wasted
    a lot of memory
 * removed global_resource_pool entirely
 * added global_free_array to delete arrays allocated with 
    global_alloc_array
 * added tracking of object versus array allocation; we will now error
    if you use global_free on an array, or global_free_array on an object

Added new utility helper const_string_pool which can be used to 
efficiently accumulate strings that are not intended to be modified.
Used by updated makelist and software list code. [Aaron Giles]

Updated png2bdc and makelist tools to not leak memory and use more modern
techniques (no more MAX_DRIVERS in makelist, for example). [Aaron Giles]

Deprecated auto_strdup and removed all uses by way of caller-managed 
astrings and the software list rewrite. [Aaron Giles]

Rewrote software list management: [Aaron Giles]
 * removed the notion of a software_list that is separate from a
    software_list_device; they are one and the same now
 * moved several functions into device_image_interface since they really
    didn't belong in the core software list class
 * lots of simplification as a result of the above changes

Additional notes (no whatsnew):

Moved definition of FPTR to osdcomm.h.

Some changes happened in the OSD code to fix issues, especially regarding
freeing arrays. SDL folks may need to fix up some of these.

The following devices still are using tokens and should be modernized
(I found them because they kept their token as void * and tried to
delete it, which you can't):

namco_52xx_device (mame/audio/namco52.c)
namco_54xx_device (mame/audio/namco54.c)
namco_06xx_device (mame/machine/namco06.c)
namco_50xx_device (mame/machine/namco50.c)
namco_51xx_device (mame/machine/namco51.c)
namco_53xx_device (mame/machine/namco53.c)
voodoo_device (emu/video/voodoo.c)
mos6581_device (emu/sound/mos6581.c)
aica_device (emu/sound/aica.c)
scsp_device (emu/sound/scsp.c)
dmadac_sound_device (emu/sound/dmadac.c)
s3c2440_device (emu/machine/s3c2440.c)
wd1770_device (emu/machine/wd17xx.c)
latch8_device (emu/machine/latch8.c)
duart68681_device (emu/machine/68681.c)
s3c2400_device (emu/machine/s3c2400.c)
s3c2410_device (emu/machine/s3c2410.c)
strataflash_device (mess/machine/strata.c)
hd63450_device (mess/machine/hd63450.c)
tap_990_device (mess/machine/ti99/990_tap.c)
omti8621_device (mess/machine/omti8621.c)
vdt911_device (mess/video/911_vdt.c)
apollo_graphics_15i (mess/video/apollo.c)
asr733_device (mess/video/733_asr.c)
2014-03-11 15:54:58 +00:00
Michael Zapf
4415ff8329 Moved sbyte_mfm_r out of private area to make it accessible to format
implementations. (nw)
2014-03-09 22:58:11 +00:00
Michael Zapf
40c1c87b73 Fixed sector extract for FM recording. 2014-02-12 11:58:29 +00:00
Curt Coder
b10cef380b (MESS) Refactored the Commodore 1541/1551/1571/2031 disk drives to use the modern floppy system. [Curt Coder] 2014-02-03 15:59:54 +00:00
Curt Coder
1310c56964 (MESS) compclr2: Emulated the keyboard and floppy WIP. (nw)
(MESS) dai: Updated to use new TMS5501. (nw)

tms5501: Rewrote the emulation to use devcb2 and diserial. [Curt Coder]

flopimg: Added preliminary support for the 8-N-1 serial encoding scheme used on Compucolor II floppies. [Curt Coder]
2014-01-15 17:10:28 +00:00
Michael Zapf
7fa1432265 Prevent clock bit to be deleted after CRC in FM. [Michael Zapf] 2014-01-05 16:25:21 +00:00
Aaron Giles
71fbb5edc2 Added license tags to a few more files. Also converted many of OG's
BSD licenses to tags since when he copied & pasted them he forgot to
remove one instance of my name, which I caught while searching. ;-)
2013-10-16 09:38:09 +00:00
Olivier Galibert
1ac400963a flopimg: When generating a pc layout, don't write the gap3 after the last sector [O. Galibert] 2013-02-09 10:35:45 +00:00
Curt Coder
cf41f05d4b (MESS) flopimg: Added support for Commodore GCR encoding. [Curt Coder]
(MESS) d64/g64 floppy modernization WIP. (nw)
2013-01-14 16:27:52 +00:00
Miodrag Milanovic
0e19f641d3 Cleanups and version bump 2013-01-11 07:32:46 +00:00
Curt Coder
cc35a4ed7d flopimg: FM WIP (nw) 2013-01-07 20:51:34 +00:00
Curt Coder
15604c6fc1 Added FM encoding support to flopimg and wd17xx_dsk. [Curt Coder] 2013-01-07 18:23:45 +00:00
Olivier Galibert
23936afefc flopimg: Avoid avoidable leaks [O. Galibert] 2013-01-03 12:41:48 +00:00
Miodrag Milanovic
436d2f757f Cleanups and version bump 2012-12-17 07:22:20 +00:00
Curt Coder
e759cbccab (MESS) c1581: Modernized floppy, WIP. (nw) 2012-12-14 17:30:42 +00:00
Curt Coder
b1354d9ed4 Added some more floppy types. (nw) 2012-11-28 15:53:32 +00:00
Olivier Galibert
a0c70ecb0c pc floppies: Merge the common parts of d88/imd [O. Galibert] 2012-11-20 20:33:37 +00:00
Olivier Galibert
2aa1e82537 duh (nw) 2012-11-16 07:48:15 +00:00
R. Belmont
b7c23bfec1 Fix GCC 4.7 compile (nw) 2012-11-16 02:22:56 +00:00
Olivier Galibert
6a43e78d97 (mess) floppy: Add IMD support [O. Galibert] 2012-11-15 20:19:53 +00:00
Sandro Ronco
e9341d47b4 Fixed memory leaks in flopimg.c (nw) 2012-10-26 17:25:10 +00:00
Olivier Galibert
9d1aaf97ae (mess) upd765: Modernize [O. Galibert]
Remaining TODO list:
- take WP into account

- test the amstrad, implement its observational format (edsk) using
  pasti as a start.  Or find the legendary amstrad IPFs.  Or both.

- correct read track, the implementation is completely wrong.  See
  previous for testing, it's only used in protections the check the
  inter-sector gaps.

- shake and bake on the amstrad, protections are the best to find bugs
  in a fdc

- add the scan id commands, but nothing seems to use them

- debug the 2.88M formatting which is unreliable.  Fix its IDAM/DAM
  gap size on formatting too (but that's not what's making it
  unreliable)

- test all the systems that were hit, and fix what needs to be fixed.
  Beware that multiple problems may happen:
  - upd765 may be wrong
  - the driver may not be working
  - the hookup may be wrong/incomplete (bitrate selection and floppy
    rpm in particular)
  - the driver may be too limited for the new implementation (the x68k
    dma device does not handle non-instant dma yet for instance)

- report invalid command when appropriate depending on the actual chip
  emulated

- add the russian clones with their real names
2012-10-10 15:33:51 +00:00
Miodrag Milanovic
e25c13f253 Clean-ups and version bump
note: hoarded dump removed too from coco_cart.xml, this will not be tolerated
2012-09-17 06:49:13 +00:00
Aaron Giles
1a30184903 Final round of struct/union/enum normalization. 2012-09-16 05:24:30 +00:00
Miodrag Milanovic
8dc8836863 preliminary FM support (no whatsnew) 2012-08-27 12:36:30 +00:00
R. Belmont
7a4b298c2d Redoing the previous change the right way ;-) (nw) 2012-05-30 22:47:47 +00:00
R. Belmont
b8ce6d6c63 flopimg: support MFM formats where sector numbering starts at 0 [R. Belmont] 2012-05-30 02:21:29 +00:00
smf-
53bf34c24f fixes for compiling with MSVC. 2012-04-24 11:58:27 +00:00
Angelo Salese
505442d0a0 Clean-ups and version bump 2012-01-29 16:34:26 +00:00
Miodrag Milanovic
64c1384e15 Sync with MESS (no whatsnew) 2012-01-25 09:52:18 +00:00
Miodrag Milanovic
9368cce90f sync with MESS, it's just cleanup :) (nw) 2012-01-24 08:52:33 +00:00
Olivier Galibert
afb7d8fb6a floppy: Do specific UI handling [O. Galibert] 2012-01-23 21:49:30 +00:00
Miodrag Milanovic
b12f0240a8 Sync with MESS, OG's work credited in MESS already (no whatsnew) 2012-01-14 13:48:41 +00:00
Olivier Galibert
f659a7f5ff mess sync (nw) 2012-01-07 21:03:04 +00:00
Miodrag Milanovic
778d3f77c3 Floppy changes by OG, imported from MESS (no whatsnew) 2011-12-30 08:56:30 +00:00
Miodrag Milanovic
6e79bb2629 Sync with MESS all credited there (no whatsnew) 2011-12-12 14:20:12 +00:00
Angelo Salese
0e5fb79526 clean-ups and version bump 2011-10-27 17:20:11 +00:00
Miodrag Milanovic
4403e7bdd8 Synced with MESS (no whatsnew) 2011-10-23 15:50:00 +00:00
Angelo Salese
5ee0c7d818 clean-ups and version bump 2011-10-10 21:17:54 +00:00
Miodrag Milanovic
b829e84ac6 Sync with MESS (no whatsnew) 2011-10-04 10:14:46 +00:00
Miodrag Milanovic
1bdb2cdbb5 Sync with MESS (no whatsnew) 2011-09-25 08:24:58 +00:00
Angelo Salese
cb74ddd807 Clean-ups and version bump 2011-09-20 21:10:48 +00:00
Miodrag Milanovic
d6ccb5380f Sync with MESS, floppy work by OG, and addition of AY8914 (no whatsnew) 2011-09-19 14:32:46 +00:00
Olivier Galibert
19b0135c30 floppy: Change the internal format to use magnetic cells. Temporarily
move the full-track pll bit extraction in the amiga fdc. [O. Galibert]
2011-09-03 20:51:10 +00:00
Olivier Galibert
f900b44eb0 floppy: Refactor slightly. Name, descrition, etc are now an intrinsic property of converters. [O. Galibert] 2011-08-30 10:58:21 +00:00
Angelo Salese
2811f1f8f7 Cleanups and version bump 2011-08-25 17:58:46 +00:00
Olivier Galibert
1a60586bc6 floppy: Add generic track data descriptors [O. Galibert] 2011-08-20 15:42:58 +00:00
Miodrag Milanovic
4c196a9538 Make image recognition more relaxing (no whatsnew) 2011-07-29 17:35:10 +00:00