{"id":48,"date":"2016-11-03T13:30:00","date_gmt":"2016-11-03T12:30:00","guid":{"rendered":"http:\/\/blog.japanese-cake.io\/index.php\/2016\/11\/03\/dear-capcom-i-think-ive-finished-your-work-what-no-money\/"},"modified":"2020-04-18T16:50:42","modified_gmt":"2020-04-18T14:50:42","slug":"dear-capcom-i-think-ive-finished-your-work-what-no-money","status":"publish","type":"post","link":"https:\/\/blog.japanese-cake.io\/index.php\/2016\/11\/03\/dear-capcom-i-think-ive-finished-your-work-what-no-money\/","title":{"rendered":"Dear Capcom, I think I&#8217;ve finished your work! What? No money?"},"content":{"rendered":"\n<p>If you don&#8217;t care about the details, just scroll down, you will find the links you are looking for.<\/p>\n\n\n\n<p>To summarize my work, I decided to create this time some gif-like images, I find it more entertaining. I hope it will help understanding the different steps I have been through. I only kept the most relevant ones, mostly because I do not remember all the stages.<\/p>\n\n\n\n<p>Whereas in some games modifying few bytes is enough to enable VGA output, here it was a different story.<\/p>\n\n\n\n<p>Not to mention that the game has been released in 5 versions just for the EURO region, the structure of the code gave me a hard time. Sometimes my patch was working correctly in the emulator but not on the real hardware. I also tried to fix delay with the subtitles when it was only due to emulation\/computing power limitations. The last epic patching issue is even worse. Because I was tired of seeing the game splash screens again and again, I hacked to game so that I reach directly the main screen. But it was a dirty hack, so dirty that it was messing with a specific part of the game: the ending splash screens. As all the rest was working flawlessly, I though that I first had to patch it, like I did with the credits screen. I don&#8217;t know how many hours I wasted before I realized that those ending splash screen were just fine the way they were!<\/p>\n\n\n\n<p>So ok, fixing the FMVs was kind of easy. But the subtitles&#8230; Arrrgh, I hate them! I remember that after reading the code that generate them, I clearly saw how I could fix them. Every attempt was a step forward. I was getting close to have them displayed correctly (see below).<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large\"><a href=\"https:\/\/i0.wp.com\/blog.japanese-cake.io\/wp-content\/uploads\/2016\/11\/10557_original.png?ssl=1\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"580\" height=\"435\" src=\"https:\/\/i0.wp.com\/blog.japanese-cake.io\/wp-content\/uploads\/2016\/11\/10557_original.png?resize=580%2C435&#038;ssl=1\" alt=\"\" class=\"wp-image-572\" srcset=\"https:\/\/i0.wp.com\/blog.japanese-cake.io\/wp-content\/uploads\/2016\/11\/10557_original.png?w=640&amp;ssl=1 640w, https:\/\/i0.wp.com\/blog.japanese-cake.io\/wp-content\/uploads\/2016\/11\/10557_original.png?resize=300%2C225&amp;ssl=1 300w\" sizes=\"auto, (max-width: 580px) 100vw, 580px\" \/><\/a><\/figure><\/div>\n\n\n\n<p>Every time I was understanding more about the way the subtitles are generated, I though I was on the right track. Only the &#8220;little&#8221; glitches you can see below were left to be fixed.<\/p>\n\n\n\n<figure class=\"wp-block-gallery aligncenter columns-2 is-cropped wp-block-gallery-1 is-layout-flex wp-block-gallery-is-layout-flex\"><ul class=\"blocks-gallery-grid\"><li class=\"blocks-gallery-item\"><figure><a href=\"https:\/\/i0.wp.com\/blog.japanese-cake.io\/wp-content\/uploads\/2020\/04\/10953_original.png?ssl=1\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"580\" height=\"435\" src=\"https:\/\/i0.wp.com\/blog.japanese-cake.io\/wp-content\/uploads\/2020\/04\/10953_original.png?resize=580%2C435&#038;ssl=1\" alt=\"\" data-id=\"574\" data-full-url=\"https:\/\/blog.japanese-cake.io\/wp-content\/uploads\/2020\/04\/10953_original.png\" data-link=\"https:\/\/blog.japanese-cake.io\/10953_original\/\" class=\"wp-image-574\" srcset=\"https:\/\/i0.wp.com\/blog.japanese-cake.io\/wp-content\/uploads\/2020\/04\/10953_original.png?w=640&amp;ssl=1 640w, https:\/\/i0.wp.com\/blog.japanese-cake.io\/wp-content\/uploads\/2020\/04\/10953_original.png?resize=300%2C225&amp;ssl=1 300w\" sizes=\"auto, (max-width: 580px) 100vw, 580px\" \/><\/a><\/figure><\/li><li class=\"blocks-gallery-item\"><figure><a href=\"https:\/\/i0.wp.com\/blog.japanese-cake.io\/wp-content\/uploads\/2020\/04\/11150_original.png?ssl=1\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"580\" height=\"435\" src=\"https:\/\/i0.wp.com\/blog.japanese-cake.io\/wp-content\/uploads\/2020\/04\/11150_original.png?resize=580%2C435&#038;ssl=1\" alt=\"\" data-id=\"575\" data-full-url=\"https:\/\/blog.japanese-cake.io\/wp-content\/uploads\/2020\/04\/11150_original.png\" data-link=\"https:\/\/blog.japanese-cake.io\/11150_original\/\" class=\"wp-image-575\" srcset=\"https:\/\/i0.wp.com\/blog.japanese-cake.io\/wp-content\/uploads\/2020\/04\/11150_original.png?w=640&amp;ssl=1 640w, https:\/\/i0.wp.com\/blog.japanese-cake.io\/wp-content\/uploads\/2020\/04\/11150_original.png?resize=300%2C225&amp;ssl=1 300w\" sizes=\"auto, (max-width: 580px) 100vw, 580px\" \/><\/a><\/figure><\/li><\/ul><\/figure>\n\n\n\n<p>Unfortunately, no matter what I was changing in the code, I did not see any improvement. It&#8217;s often difficult to accept that you took the wrong path. After spending so much time in my &#8220;super-mega-subtitle-upscaler&#8221; hack, I decided to throw it away, take a step back and see if I could fix the subtitles differently. Then I found what I was looking for: the code that sticks the texture on the surface.<\/p>\n\n\n\n<figure class=\"wp-block-gallery aligncenter columns-2 is-cropped wp-block-gallery-2 is-layout-flex wp-block-gallery-is-layout-flex\"><ul class=\"blocks-gallery-grid\"><li class=\"blocks-gallery-item\"><figure><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"580\" height=\"435\" src=\"https:\/\/i0.wp.com\/blog.japanese-cake.io\/wp-content\/uploads\/2020\/04\/11514_original.png?resize=580%2C435&#038;ssl=1\" alt=\"\" data-id=\"576\" data-full-url=\"https:\/\/blog.japanese-cake.io\/wp-content\/uploads\/2020\/04\/11514_original.png\" data-link=\"https:\/\/blog.japanese-cake.io\/11514_original\/\" class=\"wp-image-576\" srcset=\"https:\/\/i0.wp.com\/blog.japanese-cake.io\/wp-content\/uploads\/2020\/04\/11514_original.png?w=640&amp;ssl=1 640w, https:\/\/i0.wp.com\/blog.japanese-cake.io\/wp-content\/uploads\/2020\/04\/11514_original.png?resize=300%2C225&amp;ssl=1 300w\" sizes=\"auto, (max-width: 580px) 100vw, 580px\" \/><\/figure><\/li><li class=\"blocks-gallery-item\"><figure><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"580\" height=\"435\" src=\"https:\/\/i0.wp.com\/blog.japanese-cake.io\/wp-content\/uploads\/2020\/04\/11695_original.png?resize=580%2C435&#038;ssl=1\" alt=\"\" data-id=\"577\" data-full-url=\"https:\/\/blog.japanese-cake.io\/wp-content\/uploads\/2020\/04\/11695_original.png\" data-link=\"https:\/\/blog.japanese-cake.io\/11695_original\/\" class=\"wp-image-577\" srcset=\"https:\/\/i0.wp.com\/blog.japanese-cake.io\/wp-content\/uploads\/2020\/04\/11695_original.png?w=640&amp;ssl=1 640w, https:\/\/i0.wp.com\/blog.japanese-cake.io\/wp-content\/uploads\/2020\/04\/11695_original.png?resize=300%2C225&amp;ssl=1 300w\" sizes=\"auto, (max-width: 580px) 100vw, 580px\" \/><\/figure><\/li><\/ul><\/figure>\n\n\n\n<p>You can notice that the rendering on CRT and VGA displays is not 100% the same but as far as I have tested it, it is either not noticable or slightly better (the text looks more centered). Anyway, I folded my last card to fix the subtitles and I believe the outcome is more than acceptable.<\/p>\n\n\n\n<p>I am glad to see this game working well over VGA and thank to it I have learned new things. I am confident that now I can fix my previous patches for RE:CV and maybe other games like Psychic Force 2012 or MakenX.<\/p>\n\n\n\n<p>Enjoy!<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large\"><a href=\"https:\/\/i0.wp.com\/blog.japanese-cake.io\/wp-content\/uploads\/2020\/04\/10079_original.png?ssl=1\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"580\" height=\"435\" src=\"https:\/\/i0.wp.com\/blog.japanese-cake.io\/wp-content\/uploads\/2020\/04\/10079_original.png?resize=580%2C435&#038;ssl=1\" alt=\"\" class=\"wp-image-579\" srcset=\"https:\/\/i0.wp.com\/blog.japanese-cake.io\/wp-content\/uploads\/2020\/04\/10079_original.png?w=640&amp;ssl=1 640w, https:\/\/i0.wp.com\/blog.japanese-cake.io\/wp-content\/uploads\/2020\/04\/10079_original.png?resize=300%2C225&amp;ssl=1 300w\" sizes=\"auto, (max-width: 580px) 100vw, 580px\" \/><\/a><\/figure><\/div>\n\n\n\n<p><u>Downloads (and please mirror):<\/u><\/p>\n\n\n\n<ul class=\"wp-block-list\"><li><a href=\"https:\/\/mega.nz\/#!EkpkgILI!9h8l_p-rZx5WM0iI8uktGDSgnYjZnwQvlCl43lAjpeI\" target=\"_blank\" rel=\"noopener noreferrer\">Dino Crisis v1.000 (2000)(Virgin)(PAL)(EN)[!]<\/a> (<a href=\"http:\/\/www.mediafire.com\/file\/btucrohvdkbyvve\/jc-dinoce-en-60hz-vga.zip\" target=\"_blank\" rel=\"noopener noreferrer\">1ST_READ.BIN patch only<\/a>)<\/li><li><a href=\"https:\/\/mega.nz\/#!dk5ySDRJ!mxqiioziLoXglKnubBae7gLF66t0dWB1TuVLGzAV-Sw\" target=\"_blank\" rel=\"noopener noreferrer\">Dino Crisis v1.000 (2000)(Virgin)(PAL)(FR)[!]<\/a> (<a href=\"http:\/\/www.mediafire.com\/file\/e29r6td7789mg2v\/jc-dinoce-fr-60hz-vga.zip\" target=\"_blank\" rel=\"noopener noreferrer\">1ST_READ.BIN patch only<\/a>)<\/li><li><a href=\"https:\/\/mega.nz\/#!h1QmhLrJ!nWv-umylsVzvuZJjUfDar6AYJi7ySHPAnnk3C5s3LE4\" target=\"_blank\" rel=\"noopener noreferrer\">Dino Crisis v1.000 (2000)(Virgin)(PAL)(ES)[!]<\/a> (<a href=\"http:\/\/www.mediafire.com\/file\/8elgmig41rnirdi\/jc-dinoce-es-60hz-vga.zip\" target=\"_blank\" rel=\"noopener noreferrer\">1ST_READ.BIN patch only<\/a>)<\/li><li><a href=\"https:\/\/mega.nz\/#!91IFBSTB!scfRUUjnrZKguCH6zwHyP4dwQje3UcfEHjHDXpsCags\" target=\"_blank\" rel=\"noopener noreferrer\">Dino Crisis v1.000 (2000)(Virgin)(PAL)(GE)[!]<\/a> (<a href=\"http:\/\/www.mediafire.com\/file\/r4khddb9i27917d\/jc-dinoce-ge-60hz-vga.zip\" target=\"_blank\" rel=\"noopener noreferrer\">1ST_READ.BIN patch only<\/a>)<\/li><li><a href=\"https:\/\/mega.nz\/#!U1wUWBqL!kP6enqX8LZN4oQ_ZMfD5P6T8q62HtYig31drgeDXjPs\" target=\"_blank\" rel=\"noopener noreferrer\">Dino Crisis v1.000 (2000)(Virgin)(PAL)(IT)[!]<\/a> (<a href=\"http:\/\/www.mediafire.com\/file\/0sbwbqvazvt3n3g\/jc-dinoce-it-60hz-vga.zip\" target=\"_blank\" rel=\"noopener noreferrer\">1ST_READ.BIN patch only<\/a>)<\/li><\/ul>\n\n\n\n<p><u>Kudos to<\/u> bomb78 who helped me out with the testing and to Assembler Games which fellow members (&#8211;I don&#8217;t know yet whether they would like to be mentioned here&#8211;) helped me gathering all the GDI dumps for this game (specially the German and the Spanish ones). Thank you all!<\/p>\n\n\n\n<p><u>Note to Capcom (who will never read this):<\/u> You stopped the VGA support half-way and did not even support the analog stick! You little lazy boy!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>If you don&#8217;t care about the details, just scroll down, you will find the links you are looking for. To summarize my work, I decided to create this time some gif-like images, I find it more entertaining. I hope it will help understanding the different steps I have been through. I only kept the most&hellip;<a href=\"https:\/\/blog.japanese-cake.io\/index.php\/2016\/11\/03\/dear-capcom-i-think-ive-finished-your-work-what-no-money\/\" class=\"more-link\"><span>Continue reading<\/span><span class=\"screen-reader-text\">Dear Capcom, I think I&#8217;ve finished your work! What? No money?<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":225,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[1,52],"tags":[28,35,45,5,3,25],"class_list":["post-48","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-all-posts","category-game-hacks","tag-480p","tag-60hz","tag-dino-crisis","tag-dreamcast","tag-hack","tag-vga"],"jetpack_featured_media_url":"https:\/\/i0.wp.com\/blog.japanese-cake.io\/wp-content\/uploads\/2016\/11\/dinoc-post-e1587223283902.jpg?fit=1281%2C719&ssl=1","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/blog.japanese-cake.io\/index.php\/wp-json\/wp\/v2\/posts\/48","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.japanese-cake.io\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.japanese-cake.io\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.japanese-cake.io\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.japanese-cake.io\/index.php\/wp-json\/wp\/v2\/comments?post=48"}],"version-history":[{"count":8,"href":"https:\/\/blog.japanese-cake.io\/index.php\/wp-json\/wp\/v2\/posts\/48\/revisions"}],"predecessor-version":[{"id":580,"href":"https:\/\/blog.japanese-cake.io\/index.php\/wp-json\/wp\/v2\/posts\/48\/revisions\/580"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/blog.japanese-cake.io\/index.php\/wp-json\/wp\/v2\/media\/225"}],"wp:attachment":[{"href":"https:\/\/blog.japanese-cake.io\/index.php\/wp-json\/wp\/v2\/media?parent=48"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.japanese-cake.io\/index.php\/wp-json\/wp\/v2\/categories?post=48"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.japanese-cake.io\/index.php\/wp-json\/wp\/v2\/tags?post=48"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}