{"id":18936,"date":"2010-09-19T12:47:49","date_gmt":"2010-09-19T12:47:49","guid":{"rendered":"http:\/\/127.0.0.1\/ef\/?p=18936"},"modified":"-0001-11-30T00:00:00","modified_gmt":"-0001-11-29T22:00:00","slug":"","status":"publish","type":"post","link":"https:\/\/www.emu-france.com\/?p=18936","title":{"rendered":"[Arcade] Mame v0.139u3"},"content":{"rendered":"<p>Nouvelle grosse update.<\/p>\n<p><code>MAMETesters Bugs Fixed<br \/>\n----------------------<br \/>\n- 04030: [Misc.] All sets in taito_f3.c, taito_z.c, kaneko16.c,<br \/>\n         konamigq.c, overdriv.c: \"16-bit EEPROM set with 8-bit data\"<br \/>\n         (Aaron Giles)<br \/>\n- 04034: [Crash\/Freeze] All sets in viper.c: [debug] Assert in Debug<br \/>\n         build (Aaron Giles)<br \/>\n- 01993: [Graphics] stmblade: Graphical corruption on left side of screen<br \/>\n         beginining stage 3 (robiza)<br \/>\n- 04050: [Graphics] twineag2: Missing graphic effect in screen<br \/>\n         transitions (robiza)<br \/>\n- 04044: [Graphics] batsugun and clones: [possible] batsugun VDP mixing<br \/>\n         still not correct (David Haywood)<br \/>\n- 00945: [Graphics] bkraidu: Text glitch in the flip screen mode. (robiza)<br \/>\n- 00944: [Graphics] ghox: There are gfx glitches on the background in<br \/>\n         the ending scene. (robiza)<br \/>\n- 03952: [Graphics] gaiden, wildfang, raiga: Screen is shifted 32 pixels<br \/>\n         down with flip-screen. (robiza)<br \/>\n- 04036: [Graphics] astrowar: [debug] Severe graphic corruption<br \/>\n         (Fabio Priuli)<br \/>\n- 04035: [Crash\/Freeze] All sets in chihiro.c: Assert before OK<br \/>\n         (Fabio Priuli)<\/p>\n<p>Source Changes<br \/>\n--------------<br \/>\nmc6845.c: Rewritten to allow mid frame changes to the counter<br \/>\nregisters. This enables drivers to use advanced split screen and<br \/>\nscrolling effects using a regular mc6845. [Wilbert Pol]<\/p>\n<p>Changed the MACHINE_DRIVER_* macros, as follows: [Aaron Giles]<\/p>\n<p>  1. Renamed MACHINE_DRIVER_* to MACHINE_CONFIG_* to match the name of<br \/>\n  the object it actually describes. The MDRV_* prefix may eventually be<br \/>\n  bulk updated at some point, but not now.<\/p>\n<p>  2. MACHINE_CONFIG_START() now takes a driver_data_t-derived class as a<br \/>\n  required second parameter. This means that MDRV_DRIVER_DATA() is no<br \/>\n  longer required, and every \"root\" machine config *must* specify a<br \/>\n  driver data class (or driver_data_t itself if the driver has not yet<br \/>\n  been updated to use driver data).<\/p>\n<p>  3. New MACHINE_CONFIG_DERIVED() macro defines a machine_config that is<br \/>\n  derived from another machine_config. This takes the place of the very<br \/>\n  typical MACHINE_DRIVER_START()\/MDRV_IMPORT_FROM() combination.<\/p>\n<p>  4. New MACHINE_CONFIG_FRAGMENT() macro defines a partial<br \/>\n  machine_config that can only be included in another \"root\"<br \/>\n  machine_config. This is also used for machine_configs that are<br \/>\n  specified as part of a device.<\/p>\n<p>  5. Changed MDRV_IMPORT_FROM() to MDRV_FRAGMENT_ADD() to more<br \/>\n  accurately describe what is happening.<\/p>\n<p>  6. Added asserts to the above three macros to ensure they are properly<br \/>\n  used.<\/p>\n<p>Updated all machine drivers to use the new macros. Search & replace<br \/>\nlists below cover 99% of the changes, with just a few manual fixups.<br \/>\n[Aaron Giles]<\/p>\n<p>timer.c: timers get rescheduled only if enable state has changed<br \/>\n[Christophe Jaillet]<\/p>\n<p>bfm_dm01 improvements: replaced the video screen hack used for the<br \/>\ndotmatrix display with a more accurate, artwork-based version. The<br \/>\nBFM_DM01 clocks data in one byte at a time, and the new dotmatrix<br \/>\nrender object represents the 8 dots powered by each byte. [AGEMAME]<\/p>\n<p>aristmk4.c:<br \/>\n * Cashcade workaround for topgear [Frasher]<br \/>\n * Improved a few memory handlers [Palindrome]<\/p>\n<p>Changed driver_data objects to be devices. Replaced the driver_data_t<br \/>\nclass with a new driver_device class, which is the base class for all<br \/>\ndriver_data objects now. The new driver devices are added as the first<br \/>\ndevice in the device list, with a tag of \"root\"; all other devices are<br \/>\nnow owned by the driver device. [Aaron Giles]<\/p>\n<p>Moved core callbacks (machine_start\/_reset, sound_start\/_reset,<br \/>\nvideo_start\/_reset\/_eof\/_update, and palette_init) into device<br \/>\nconfiguration parameters on these new devices. The driver_device base<br \/>\nclass overrides device_start(), ensures all other devices have been<br \/>\nstarted, and then calls, in order, the following overridable methods:<\/p>\n<p>  1. DRIVER_INIT function from the game driver<br \/>\n  2. palette_init() - by default calls the MDRV_PALETTE_INIT<br \/>\n     function<br \/>\n  3. driver_start() - new<br \/>\n  4. machine_start() - by default calls the MDRV_MACHINE_START function<br \/>\n  5. sound_start() - by default calls the MDRV_SOUND_START function<br \/>\n  6. video_start() - by default calls the MDRV_VIDEO_START function<\/p>\n<p>Similarly, the driver_device class overrides device_reset() and then<br \/>\ncalls these methods in order:<\/p>\n<p>  driver_reset() - new<br \/>\n  machine_reset() - by default calls the MDRV_MACHINE_RESET function<br \/>\n  sound_reset() - by default calls the MDRV_SOUND_RESET function<br \/>\n  video_reset() - by default calls the MDRV_VIDEO_RESET function<\/p>\n<p>To accommodate these changes, initialization order is slightly altered<br \/>\nfrom before. The tilemap, video, sound, and debug systems are now<br \/>\ninitialized prior to the devices' start. And the user callbacks for<br \/>\nDRIVER_INIT, PALETTE_INIT, MACHINE_START, SOUND_START, and VIDEO_START<br \/>\nare all called back-to-back. The net effect should be similar,<br \/>\nhowever. [Aaron Giles]<\/p>\n<p>Changed device_t::subtag to only prepend a prefix if the device is not<br \/>\nthe 'root' device, in order to keep compatibility with existing tag<br \/>\nsearching. [Aaron Giles]<\/p>\n<p>Changed device startup to actively reorder devices when they report<br \/>\nmissing dependencies. This ensures that the reset functions get called<br \/>\nin the same order that the start functions did. [Aaron Giles]<\/p>\n<p>Remove artificial SOUND_ prefix from sound device names. [Atari Ace]<\/p>\n<p>Converted sauro, scotrsht, segald, seicross, senjyo, shangha3,<br \/>\nshaolins, shisen, skyraid, solomon, spcforce, speekatk, splash,<br \/>\nsprcros2, ssozumo, suna16, suna8 to driver_data. [Atari Ace]<\/p>\n<p>Added include files for all remaining drivers with multiple source<br \/>\nfiles. [Atari Ace]<\/p>\n<p>Corrected or clarified a number of duplicated inputs for drivers up<br \/>\nthrough A  [Tafoid]<\/p>\n<p>Changed driver_device to expose the game_driver's ROMs through the<br \/>\ndevice interface. This means all ROMs are now exposed via devices, and<br \/>\nthus the process of enumerating ROMs gets simpler. [Aaron Giles]<\/p>\n<p>Changed all instances of temporarily allocating machine_config objects<br \/>\nto just put them on the stack for simplicity, letting the destructor<br \/>\nhandle the cleanup work automatically. [Aaron Giles]<\/p>\n<p>Changed machine_config constructor to take a game_driver, from which<br \/>\nthe machine_config constructor is obtained. This also means the<br \/>\nresulting machine_config holds a reference to the game_driver.<br \/>\n[Aaron Giles]<\/p>\n<p>Changed running_machine constructor to no longer take a game_driver,<br \/>\nsince the game_driver is now obtainable via the machine_config.<br \/>\n[Aaron Giles]<\/p>\n<p>Added two new template classes optional_device<> and<br \/>\nrequired_device<>. Use these to declare the device pointers in the<br \/>\nclass. The only difference between the two is that required will<br \/>\nfatalerror if the device is not found. These new classes are \"pass-<br \/>\nthrough\" so the underlying pointer can be passed anywhere a regular<br \/>\ndevice pointer would work. [Aaron Giles]<\/p>\n<p>Fix compiling on older GCCs (including OS X PowerPC) [Aaron Giles]<\/p>\n<p>Change shared memory regions to track their size. Added<br \/>\nmemory_get_shared() functions to retrieve a pointer to a shared region<br \/>\nand optionally the size. [Aaron Giles]<\/p>\n<p>pipeline (pipeline.c) [stephh] :<br \/>\n * Fixed Dip Switches and Inputs (after verification of the Z80 code)<\/p>\n<p>Added templates required_shared_ptr<> and optional_shared_ptr<> which<br \/>\nwork just like required_device<> and optional_device<> for retrieving<br \/>\na pointer by tag from an address space that specifies AM_SHARE(\"tag\").<br \/>\nAlso added templates required_shared_size<> and optional_shared_size<><br \/>\nfor retrieving the size of the AM_SHARE region. [Aaron Giles]<\/p>\n<p>Created a new generic NVRAM device. It can be configured to default to<br \/>\n0-fill, 1-fill, random-fill, or custom fill. In all cases, a<br \/>\nsame-named memory region overrides the default fill. The address range<br \/>\nwhere the NVRAM can be found is now identified by an AM_SHARE() region<br \/>\nof the same tag as the NVRAM device. Drivers can also explicitly<br \/>\nconfigure a separately-allocated NVRAM region via<br \/>\nnvram_device::set_base(). [Aaron Giles]<\/p>\n<p>Replaced all instances of MDRV_NVRAM_HANDLER(generic_*) with<br \/>\nMDRV_NVRAM_ADD_*(\"nvram\"). Replaced all<br \/>\nAM_BASE_GENERIC\/AM_SIZE_GENERIC(nvram) with AM_SHARE(\"nvram\"). For all<br \/>\nremaining drivers that referenced the generic.nvram directly, changed<br \/>\nthem to hold a required_shared_ptr<UINTx> to the NVRAM in their driver<br \/>\nstate, and use that instead. Removed nvram and nvram_size from the<br \/>\ngeneric_ptrs. [Aaron Giles]<\/p>\n<p>Have each device create its own device_debug instead of letting the<br \/>\ndebugger do it. This allows the device to start itself up before the<br \/>\ndebugger tries to figure out what to do with it. Fixes the problem<br \/>\nwhere register names were not populated into the symbol table<br \/>\ncorrectly after I shuffled the initialization order. [Aaron Giles]<\/p>\n<p>multfish.c: Updated driver with new information and several new sets<br \/>\nas well as several new bootlegs. [MetalliC]<\/p>\n<p>New driver for Jubilee's Double-Up Poker. Decoded graphics and colors<br \/>\nproperly. Hooked the correct TMS9980 CPU, added a preliminary memory<br \/>\nmap and some technical notes. [Roberto Fresca]<\/p>\n<p>Integrated comments into debugcpu.c, and removed debugcmt.c.<br \/>\nModernized the code and updated so it actually works with the modern<br \/>\ndebug classes. [Aaron Giles]<\/p>\n<p>Added AM_DEVREAD_MODERN\/AM_DEVWRITE_MODERN\/etc. macros for the<br \/>\nnon-modern address map case so that updated devices can shed their<br \/>\nold-style read\/write handlers in favor of member functions.<br \/>\n[Aaron Giles]<\/p>\n<p>Bulk converted all okim6295_r\/okim6295_w references in the address<br \/>\nmaps to call to the modern member functions. [Aaron Giles]<\/p>\n<p>quizpani (quizpani.c) [stephh] :<br \/>\n * Improved Dip Switches and fixed Inputs (after verification of the<br \/>\n    M68000 code)<\/p>\n<p>Renamed namcops2 DVDs to match labels [Guru]<\/p>\n<p>Added read_status() and write_command() methods to the okim6295_device<br \/>\nfor the common case where these are done outside the context of a read<br \/>\nor write handler (it was annoying to pass in the fake address space<br \/>\nfor these cases). [Aaron Giles]<\/p>\n<p>Added DEVCB_DEVICE_MEMBER() macros which allow you to specify a<br \/>\nREAD8_MEMBER or WRITE8_MEMBER in a device callback (via dynamically<br \/>\ngenerated trampolines). [Aaron Giles]<\/p>\n<p>Replaced all remaining calls to okim6295_r\/okim6295_w with calls to<br \/>\nthe new methods, and removed the static functions. [Aaron Giles]<\/p>\n<p>namcops2: added dongle dump for Federation vs. Z.A.F.T. [Guru]<\/p>\n<p>Corrected or clarified a number of duplicated inputs for drivers up<br \/>\nthrough C  [Tafoid]<\/p>\n<p>Fixed sprite OV flag behaviour in PC Engine VDC emulation<br \/>\n[Angelo Salese, Charles MacDonald]<\/p>\n<p>Corrected or clarified a number of duplicated inputs for drivers up<br \/>\nthrough G  [Tafoid]<\/p>\n<p>Converted ASAP CPU core from a legacy CPU core to a modern device.<br \/>\n[Aaron Giles]<\/p>\n<p>Renamed device_execute_interface::m_icount to m_icountptr to avoid<br \/>\ncommonly-named device values of m_icount. [Aaron Giles]<\/p>\n<p>Fixed a bogus Hu6280 CPU core bug with timer latch division values<br \/>\nreadings [Angelo Salese]<\/p>\n<p>[SSV] implemented visible area registers; now the resolution for all<br \/>\nthe games is the max visible area (the values of the registers after<br \/>\nthe boot process) [Robert Zandona']<\/p>\n<p>Fixed missing VRAM > VRAM DMA flag clearance in PC Engine emulation<br \/>\n[Angelo Salese]<\/p>\n<p>strnskil.c: Added MCU dump for banbam. [Pete Ogoun, Andrew Gardner]<\/p>\n<p>Moved sound routing for non-speaker devices over to the sound<br \/>\ninterface's post-start method. Routing from one sound device to<br \/>\nanother was broken when sound_init() was moved ahead of device<br \/>\nstartup. [Aaron Giles]<\/p>\n<p>Removed vestigial NVRAM from starwars, which is now covered by the<br \/>\nx2212 device. [Aaron Giles]<\/p>\n<p>CHDMAN: rewrote bin\/cue support from specs, more images now work.<br \/>\n[R. Belmont]<\/p>\n<p>Removed generic.videoram and generic.videoram_size. These generics<br \/>\nhave no core use, they are simply there for the convenience of<br \/>\ndrivers. Now that drivers are required to have devices, the data<br \/>\nshould move there. [Atari Ace]<\/p>\n<p>Added proper handling of the SRAM in Aristocrat MK-5 [Palindrome]<\/p>\n<p>Removed usage of I2C in Aristocrat MK-5 [Angelo Salese]<\/p>\n<p>Added -bench <emulated-seconds> option to standardize benchmarking.<br \/>\n[Aaron Giles]<\/p>\n<p>Added DECLARE\/DEFINE_TRIVIAL_DERIVED_DEVICE macros to simplify the<br \/>\ndefinition of devices that are based off of a parent device, but which<br \/>\ndiffer in name and a single parameter. [Aaron Giles]<\/p>\n<p>Convert ADSP21xx core to a modern CPU device. [Aaron Giles]<\/p>\n<p>On Windows, osd_break_into_debugger() will now dump a stack crawl if<br \/>\nthere's no debugger attached. This means that asserts should have a<br \/>\nfull crawl now, for easier debugging. [Aaron Giles]<\/p>\n<p>Replaced NVRAM_HANDLER in leland with an NVRAM device. [Aaron Giles]<\/p>\n<p>ssv:<br \/>\n * implemented y tilemap offset register; (Roberto Zandona')<br \/>\n * implemented x and y visible area register; (Roberto Zandona')<br \/>\n * disabled tilemap draw when mode=0; (Roberto Zandona')<br \/>\n * confirmed visible area register with a twin eagle II PCB (Corrado<br \/>\nTomaselli)<\/p>\n<p>Replaced largely redundant NVRAM handlers with NVRAM devices for<br \/>\nnamcos2 and a bunch of the Nichibutsu mahjong games. Also did it for<br \/>\nthe Atari games, moving the old hard-coded EEPROM data out into files<br \/>\nfinally. [Aaron Giles]<\/p>\n<p>Merged ssgbl.c into megadrvb.c and moved bootleg input definitions out<br \/>\nof megadriv.c [Sonikos]<\/p>\n<p>Made the mc146818 a proper device, modernized it, and added an NVRAM<br \/>\ninterface so that drivers don't have to ask it to be manually saved.<br \/>\n[Aaron Giles]<\/p>\n<p>Added definitions for [DECLARE_]READ_LINE_MEMBER and<br \/>\n[DECLARE_]WRITE_LINE_MEMBER so that read\/write line callbacks can be<br \/>\ndefined as member functions. [Aaron Giles]<\/p>\n<p>Added stubs and new macro DEVCB_DEVICE_LINE_MEMBER to allow these to<br \/>\nbe referenced from device callbacks. [Aaron Giles]<\/p>\n<p>Modernized the 6522 VIA device: [Aaron Giles]<br \/>\n * changed to use the new device timer mechanism<br \/>\n * removed all trampolines in favor of modern methods<\/p>\n<p>ssv: removed kludge for sprite x offset and implemented 1 bit of 7a-7b<br \/>\nregister [Roberto Zandona']<\/p>\n<p>ssv:<br \/>\n * implemented y sprite inversion CRT register;<br \/>\n * added a kludge for dynagear<br \/>\n * used CRT registers to get the sprite x offset [Roberto Zandona']<\/p>\n<p>ssv: removed offset values from the init; the offset now are handled<br \/>\nby the CRT registers [Roberto Zandona']<\/p>\n<p>ssv: fixed bit #a of 7a-7b CRT register [Roberto Zandona']<\/p>\n<p>Converted intelfsh to a device, updated all users. [Aaron Giles]<\/p>\n<p>ssv: fixed background disable condition [Roberto Zandona']<\/p>\n<p>New build tool makedep.c, derived from src2html.c (really!). Does<br \/>\nbasic dependency analysis and supports excluding paths. [Aaron Giles]<\/p>\n<p>Makefile now supports a depend target which will run makedep on the<br \/>\nsrc\/$(TARGET) tree and create dependencies. It deliberately excludes<br \/>\nthe root of src\/emu as well as the osd directories in order to keep<br \/>\nthe dependency file down to a reasonable size, so if a core header<br \/>\nfile changes, you still need to clean and build all. [Aaron Giles]<\/p>\n<p>CHDMAN: improved -extractcd bin\/cue output, improved error handling.<br \/>\n[R. Belmont]<\/p>\n<p>Added memory interface to the intelfsh device so you can access\/view<br \/>\nthe data in the debugger and via the standard memory interfaces.<br \/>\nRemoved the old memory() method in favor of new functions<br \/>\nread_raw()\/write_raw() which do direct reads\/writes of the data.<br \/>\n[Aaron Giles]<\/p>\n<p>Cleaned up CPS3 No-CD sets to break up the \"ROMs\" into individual<br \/>\nflash pieces which are automatically loaded by the intelfsh device on<br \/>\ninitialization. Also split the MACHINE_CONFIG to only populate the<br \/>\nnumber of SIMMs actually present for each game, as documented in the<br \/>\ntop of the file. And replaced the NVRAM_HANDLER with an NVRAM device.<br \/>\n[Aaron Giles]<\/p>\n<p>CHDMAN: support for .WAV tracks in bin\/cue images [R. Belmont]<\/p>\n<p>neogeo.c: misc updates [Johnboy]<br \/>\n * viewpoint - Renamed v's to correct chip label<br \/>\n * ghostlop - Renamed roms to match proto naming sheme<br \/>\n * savagere, kizuna - Added correct c1<br \/>\n * crsword - Tagged MVS AND AES VERSION, added correct m1<br \/>\n * legendos - Added correct m1<\/p>\n<p>Triple Punch\/Knock Out AY-3-8910 clock speed was incorrect, fixed and<br \/>\nverified from real hardware. [plgDavid] Verified clocks and oki pin on<br \/>\nquiz channel question boardset. [plgDavid]<\/p>\n<p>Added an integral device_timer_id to device timers. This is a cleaner<br \/>\nway to differentiate between multiple timers rather than relying on<br \/>\nthe pointers. These values are also saved with the timers. Updated the<br \/>\nfew devices using device timers to leverage this. [Aaron Giles]<\/p>\n<p>Added new function device_timer_call_after_resynch() which creates a<br \/>\ntemporary 0-length timer that calls back through the device's<br \/>\ndevice_timer() method with a given device_timer_id. [Aaron Giles]<\/p>\n<p>Added a function to change the MSM5205 frequency dynamically<br \/>\n[Angelo Salese]<\/p>\n<p>Added a set volume function for CD-DA [Angelo Salese]<\/p>\n<p>New games added or promoted from NOT_WORKING status<br \/>\n---------------------------------------------------<br \/>\nShinobi \/ FZ-2006 (Korean System 16 bootleg)<br \/>\n  (ISG Selection Master Type 2006) [Angelo Salese]<br \/>\nPoker Master (Tony-Poker V3.A, hack?)<br \/>\n  [David Haywood, William Ostronic]<\/p>\n<p>New clones added<br \/>\n----------------<br \/>\nVigilante (World, set 2) [porchy]<br \/>\nSega Rally Championship (Revision B) [Alex's Blog]<br \/>\nTouchmaster 2000 Plus (v4.63 Standard)<br \/>\n  [Brian Troha, The Dumping Union]<br \/>\nTouchmaster 4000 (v6.01 Standard) [Brian Troha, The Dumping Union]<\/p>\n<p>New games marked as GAME_NOT_WORKING<br \/>\n------------------------------------<br \/>\nJubilee Double-Up Poker [Roberto Fresca]<br \/>\nPiccolo Poker [Roberto Fresca, Team Europe & Housi]<br \/>\nCrisis Zone (CSZO2 Ver. A) [Guru]<br \/>\nSoul Calibur 2 (SC22 Ver. A) [Guru]<br \/>\nWhite Tiger [Palindrome]<br \/>\nSwiss Poker ('50 SG-.10', V2.5)<br \/>\n  [Roberto Fresca, Tomasz Slanina, Team Europe & Housi]<br \/>\nMovie Card [Roberto Fresca, Team Europe & Housi]<br \/>\nMaximum Speed [Guru]<br \/>\n[\/CODE]<br \/>\n<\/p>\n<p class=\"p_site_officiel\"><a href=\"http:\/\/mamedev.org\/updates.html\" class=\"site_officiel\" target=\"_blank\">Site Officiel<\/a><\/p>\n<p class=\"p_en_savoir_plus\"><a href=\"https:\/\/www.emu-france.com\/emulateurs\/6-arcades\/88-mame-wip\/\" class=\"en_savoir_plus\">En savoir plus...<\/a><\/p>\n<div class=\"fcbkbttn_buttons_block\" id=\"fcbkbttn_left\"><div class=\"fb-share-button  \" data-href=\"https:\/\/www.emu-france.com\/?p=18936\" data-type=\"button_count\" data-size=\"small\"><\/div><\/div>","protected":false},"excerpt":{"rendered":"<p>Nouvelle grosse update. MAMETesters Bugs Fixed &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;- &#8211; 04030: [Misc.] All sets in taito_f3.c, taito_z.c, kaneko16.c, konamigq.c, overdriv.c: \u00ab\u00a016-bit EEPROM set with 8-bit data\u00a0\u00bb (Aaron Giles) &#8211; 04034: [Crash\/Freeze] All sets in viper.c: [debug] Assert in Debug build (Aaron Giles) &#8230;<\/p>\n","protected":false},"author":3,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":false,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2}},"categories":[],"tags":[],"class_list":["post-18936","post","type-post","status-publish","format-standard","hentry","uentry","postonpage-1","odd","post-author-Jets"],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack_shortlink":"https:\/\/wp.me\/sKi2R-","jetpack_likes_enabled":false,"jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/www.emu-france.com\/index.php?rest_route=\/wp\/v2\/posts\/18936","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.emu-france.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.emu-france.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.emu-france.com\/index.php?rest_route=\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/www.emu-france.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=18936"}],"version-history":[{"count":0,"href":"https:\/\/www.emu-france.com\/index.php?rest_route=\/wp\/v2\/posts\/18936\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.emu-france.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=18936"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.emu-france.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=18936"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.emu-france.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=18936"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}