{"action":"created","issue":{"url":"https://api.github.com/repos/reicast/reicast-emulator/issues/1188","repository_url":"https://api.github.com/repos/reicast/reicast-emulator","labels_url":"https://api.github.com/repos/reicast/reicast-emulator/issues/1188/labels{/name}","comments_url":"https://api.github.com/repos/reicast/reicast-emulator/issues/1188/comments","events_url":"https://api.github.com/repos/reicast/reicast-emulator/issues/1188/events","html_url":"https://github.com/reicast/reicast-emulator/issues/1188","id":334038217,"node_id":"MDU6SXNzdWUzMzQwMzgyMTc=","number":1188,"title":"Naomi support status","user":{"login":"barbudreadmon","id":10391265,"node_id":"MDQ6VXNlcjEwMzkxMjY1","avatar_url":"https://avatars1.githubusercontent.com/u/10391265?v=4","gravatar_id":"","url":"https://api.github.com/users/barbudreadmon","html_url":"https://github.com/barbudreadmon","followers_url":"https://api.github.com/users/barbudreadmon/followers","following_url":"https://api.github.com/users/barbudreadmon/following{/other_user}","gists_url":"https://api.github.com/users/barbudreadmon/gists{/gist_id}","starred_url":"https://api.github.com/users/barbudreadmon/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/barbudreadmon/subscriptions","organizations_url":"https://api.github.com/users/barbudreadmon/orgs","repos_url":"https://api.github.com/users/barbudreadmon/repos","events_url":"https://api.github.com/users/barbudreadmon/events{/privacy}","received_events_url":"https://api.github.com/users/barbudreadmon/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":6,"created_at":"2018-06-20T11:36:47Z","updated_at":"2018-06-21T12:33:32Z","closed_at":null,"author_association":"NONE","body":"## Why fixing naomi support would be a good thing\r\nI thought i would open a new issue about this, because the old ones don't cover everything.\r\n\r\nFirst, for the remainder, there are quite a lot of games that were never ported from naomi to dreamcast or any other console, you can find a partial list there : http://www.thedreamcastjunkyard.co.uk/2016/01/guest-article-expanding-dreamcast.html, the list only covers until 2007, while there were other games later.\r\n\r\nSecond, yes, there is mame, but reicast would be far better for this, especially with @flyinghead recent work on OIT.\r\n\r\nI wouldn't mind patreonizing this, but at the moment i'm kinda worried about the fact there are many forks with different features, all this good stuff should make its way here, and i don't know why it doesn't (mainly thinking about OIT here, to be honest i'm mainly using flyinghead's fork at the moment)\r\n\r\nI was able to start the naomi mode a few days ago (it seems like no one know how it works, so i searched and tried until i found out).\r\n\r\n## How to start a naomi game\r\nOn linux, to start a naomi game, besides building with `make NAOMI=1`, you need the `naomi_boot.bin` file in the data directory, this file is known as `epr-2157XY.ic27`, where X is a number related to the region (6 for japan, 7 for usa, 8 for europe), and Y is the supported features. Depending on the game, it will accept certain bios, the bios with the best compatibility is supposed to be `epr-21576h.ic27`. Then you need a converted game rom + some kind of loader. The loader file is like a cue file with this kind of content : \r\n`Guilty Gear XX Accent Core`\r\n`\"GuiltyGearXXAccentCore_v6.bin\",   0x0000000, 0x0F000000`\r\nWhere `GuiltyGearXXAccentCore_v6.bin` is the path to the rom and `0x0F000000` is the hexadecimal size of the rom.\r\nAt the very least it's how things were with nullDC, personally i tried loading the rom file directly and didn't see any difference, so i'm not sure it's still working like this. But it should, right ?\r\n\r\n## Current issue\r\nWhen i try launching a game that way, i get the naomi screen with an error saying \"error 3 board malfunctioning\", i don't know what it means, here is the output : \r\n> Config dir is: /home/udoo/.reicast/\r\nData dir is:   /home/udoo/.reicast/\r\nPersonality: 00000000\r\nUpdated personality: 00000000\r\nLinux paging: 00001000 00001000 00000FFF\r\nMAP 00800000 w/ 50331648\r\nMAP 20000000 w/ 50331648\r\nMAP 04000000 w/ 33554432\r\nMAP 06000000 w/ 33554432\r\nMAP 0C000000 w/ 0\r\nA8\r\nvmem reserve: base: A94D0000, aram: c94d0000, vram: AD4D0000, ram: B54D0000\r\nResetting mem\r\nMem alloc successful!wtf /media/DATA/Emulation/roms/dreamcast/Akatsuki Bk Ausf Achse.lst is supposed to do ?\r\nlibwebsockets test server - (C) Copyright 2010-2013 Andy Green <andy@warmcat.com> - licensed under LGPL2.1\r\nInitial logging level 7\r\nLibrary version: 1.3 c11b847\r\nIPV6 not compiled in\r\nlibev support not compiled in\r\nMalformed entry on config - ignoring @ 49(ElfFile)\r\nMalformed entry on config - ignoring @ 52(ta.HashCheckFile)\r\nMalformed entry on config - ignoring @ 53(ta.HashLogFile)\r\n static allocation: 4488 + (16 x 1024 fds) = 20872 bytes\r\n canonical_hostname = udoo\r\n per-conn mem: 184 + 1554 headers + protocol rx buf\r\n Listening on port 5678\r\nFound 6 matching FB configs.\r\nChosen visual ID = 0x21\r\nLoaded /home/udoo/.reicast/data/naomi_boot.bin as bootrom\r\nLoaded /home/udoo/.reicast/data/naomi_nvmem.bin as nvram\r\nUsing Recompiler\r\nAuto-selected audio backend \"alsa\" (Advanced Linux Sound Architecture).\r\nInitializing audio backend \"alsa\" (Advanced Linux Sound Architecture)...\r\nALSA: period size set to 1024\r\nALSA: buffer size set to 5120\r\nrecSh4 Init\r\nFreeing fpcb\r\n\t CodeCache addr: 0x564d5eb49000 | from: 0x564d5eb49000 | addr here: 0x564d5eb47f60\r\nnullDC-Naomi rom loader v1.2\r\nEEPROM file : null.eeprom\r\nGL context version: 4.5\r\nSh4 Reset\r\nreios: IP.bin is ''\r\nreios: Hardware ID is: \r\nreios: Maker ID is:    \r\nreios: Device info is: \r\nreios: Area symbols is: \r\nreios: Peripherals is: \r\nreios: Product number is: \r\nreios: Product version is: \r\nreios: Release date is: \r\nreios: Boot filename is: \r\nreios: Software company is: \r\nreios: Software name is: \r\nreios: loading ip.bin from FAD: 8323072\r\nreios: bootfile is ''\r\nOSD: 6\r\nError opening /home/udoo/.reicast/data/buttons.png\r\nError opening /home/udoo/.reicast/pixmaps/font.png\r\nError opening /home/udoo/.reicast/font.png\r\nFailed to locate bootfile.\r\nevdev: Trying to open device at '/dev/input/event0'\r\nevdev: Found 'Power Button' at '/dev/input/event0'\r\nevdev: reading mapping file: 'controller_generic.cfg'\r\nbtn_a = BTN_SOUTH (304)\r\nbtn_b = BTN_EAST (305)\r\nbtn_c = BTN_C (306)\r\nbtn_d = BTN_THUMBL (317)\r\nbtn_x = BTN_NORTH (307)\r\nbtn_y = BTN_WEST (308)\r\nbtn_z = BTN_Z (309)\r\nbtn_start = BTN_START (315)\r\nbtn_escape = BTN_SELECT (314)\r\nbtn_dpad1_left = BTN_DPAD_UP (544)\r\nbtn_dpad1_right = BTN_DPAD_DOWN (545)\r\nbtn_dpad1_up = BTN_DPAD_LEFT (546)\r\nbtn_dpad1_down = BTN_DPAD_RIGHT (547)\r\nbtn_trigger_left = BTN_TL (310)\r\nbtn_trigger_right = BTN_TR (311)\r\naxis_dpad1_x = ABS_HAT0X (16)\r\naxis_dpad1_y = ABS_HAT0Y (17)\r\naxis_dpad2_x = ABS_HAT1X (18)\r\naxis_x = ABS_X (0)\r\naxis_y = ABS_Y (1)\r\naxis_trigger_left = ABS_Z (2)\r\naxis_trigger_right = ABS_RZ (5)\r\nevdev: Using 'Generic Controller' mapping\r\nevdev ioctl: Invalid argument\r\nevdev ioctl: Invalid argument\r\nevdev ioctl: Invalid argument\r\nevdev ioctl: Invalid argument\r\nevdev: Controller 2 disabled by config.\r\nevdev: Controller 3 disabled by config.\r\nevdev: Controller 4 disabled by config.\r\nLegacy Joystick input disabled by config.\r\ncntx // fpcb offset: -135266304 // pc offset: -184 // pc A0000000\r\nGet MemPtr unsupported area : addr=0xA0000000\r\nGet MemPtr unsupported area : addr=0xA0000018\r\nSh4: i-cache invalidation A0000016\r\nFreeing fpcb\r\nrecSh4:Dynarec Cache clear at A0000016\r\nGet MemPtr unsupported area : addr=0x80000080\r\nsh4io: Const write ignored @@ 00000028 <- 0000A400\r\nGet MemPtr unsupported area : addr=0x800000A8\r\nGet MemPtr unsupported area : addr=0x800000BE\r\nGet MemPtr unsupported area : addr=0x800000C6\r\nFreeing fpcb\r\nrecSh4:Dynarec Cache clear at 8C0000DE\r\nGet MemPtr unsupported area : addr=0xA0000420\r\nGet MemPtr unsupported area : addr=0xA0000440\r\nsh4io: Const write ignored @@ 00000028 <- 00000000\r\nGet MemPtr unsupported area : addr=0xA00004BC\r\nsh4io: Const write ignored @@ 00000028 <- 00000000\r\nGet MemPtr unsupported area : addr=0xA0000506\r\nGet MemPtr unsupported area : addr=0xA000057C\r\nGet MemPtr unsupported area : addr=0xA0000586\r\nGet MemPtr unsupported area : addr=0xA000058E\r\nGet MemPtr unsupported area : addr=0xA00005A6\r\nGet MemPtr unsupported area : addr=0xA00005AC\r\nGet MemPtr unsupported area : addr=0xA00005B8\r\nGet MemPtr unsupported area : addr=0xA00005CE\r\nnaomi?WTF? WriteMem: 5F7070 <= 7, 4\r\nnaomi?WTF? WriteMem: 5F7074 <= 0, 4\r\nnaomi?WTF? WriteMem: 5F7070 <= 7, 4\r\nnaomi?WTF? ReadMem: 5F7074, 4\r\nnaomi?WTF? WriteMem: 5F7070 <= 7, 4\r\nnaomi?WTF? WriteMem: 5F7074 <= 1, 4\r\nnaomi?WTF? WriteMem: 5F7070 <= 7, 4\r\nnaomi?WTF? ReadMem: 5F7074, 4\r\nnaomi?WTF? ReadMem: 5F7034, 2\r\nsh4io: Invalid read access @@ 00000030\r\nnaomi?WTF? WriteMem: 5F7030 <= 0, 4\r\nnaomi?WTF? WriteMem: 5F7030 <= 8, 4\r\nnaomi?WTF? WriteMem: 5F7030 <= 8, 4\r\nnaomi?WTF? WriteMem: 5F7030 <= 8, 4\r\nnaomi?WTF? WriteMem: 5F7030 <= 8, 4\r\nnaomi?WTF? WriteMem: 5F7030 <= 8, 4\r\nnaomi?WTF? WriteMem: 5F7030 <= 8, 4\r\nnaomi?WTF? WriteMem: 5F7030 <= 8, 4\r\nnaomi?WTF? WriteMem: 5F7030 <= 8, 4\r\nnaomi?WTF? WriteMem: 5F7030 <= 8, 4\r\nnaomi?WTF? WriteMem: 5F7030 <= 8, 4\r\nnaomi?WTF? WriteMem: 5F7030 <= 8, 4\r\nnaomi?WTF? WriteMem: 5F7030 <= 8, 4\r\nnaomi?WTF? WriteMem: 5F7030 <= 8, 4\r\nnaomi?WTF? WriteMem: 5F7030 <= 8, 4\r\nnaomi?WTF? WriteMem: 5F7030 <= 8, 4\r\nnaomi?WTF? WriteMem: 5F7030 <= 8, 4\r\nnaomi?WTF? WriteMem: 5F7030 <= 8, 4\r\nnaomi?WTF? WriteMem: 5F7030 <= 8, 4\r\nnaomi?WTF? WriteMem: 5F7030 <= 8, 4\r\nnaomi?WTF? WriteMem: 5F7030 <= 8, 4\r\nnaomi?WTF? WriteMem: 5F7030 <= 28, 4\r\nnaomi?WTF? WriteMem: 5F7030 <= 28, 4\r\nnaomi?WTF? WriteMem: 5F7030 <= 28, 4\r\nnaomi?WTF? WriteMem: 5F7030 <= 28, 4\r\nnaomi?WTF? WriteMem: 5F7030 <= 28, 4\r\nnaomi?WTF? WriteMem: 5F7030 <= 28, 4\r\nnaomi?WTF? WriteMem: 5F7030 <= 28, 4\r\nnaomi?WTF? WriteMem: 5F7030 <= 28, 4\r\nnaomi?WTF? WriteMem: 5F7030 <= 28, 4\r\nnaomi?WTF? WriteMem: 5F7030 <= 28, 4\r\n\r\nMy guess is that the issue is somehow related to the `Failed to locate bootfile.` message, which seems like some kind of \"i can't load the rom\" error, except i'm doing it the right way (at least, that's how it worked with nullDC), and my roms are ok.\r\n\r\nAny help would be really appreciated."},"comment":{"url":"https://api.github.com/repos/reicast/reicast-emulator/issues/comments/399087739","html_url":"https://github.com/reicast/reicast-emulator/issues/1188#issuecomment-399087739","issue_url":"https://api.github.com/repos/reicast/reicast-emulator/issues/1188","id":399087739,"node_id":"MDEyOklzc3VlQ29tbWVudDM5OTA4NzczOQ==","user":{"login":"LoungeKatt","id":1173913,"node_id":"MDQ6VXNlcjExNzM5MTM=","avatar_url":"https://avatars1.githubusercontent.com/u/1173913?v=4","gravatar_id":"","url":"https://api.github.com/users/LoungeKatt","html_url":"https://github.com/LoungeKatt","followers_url":"https://api.github.com/users/LoungeKatt/followers","following_url":"https://api.github.com/users/LoungeKatt/following{/other_user}","gists_url":"https://api.github.com/users/LoungeKatt/gists{/gist_id}","starred_url":"https://api.github.com/users/LoungeKatt/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/LoungeKatt/subscriptions","organizations_url":"https://api.github.com/users/LoungeKatt/orgs","repos_url":"https://api.github.com/users/LoungeKatt/repos","events_url":"https://api.github.com/users/LoungeKatt/events{/privacy}","received_events_url":"https://api.github.com/users/LoungeKatt/received_events","type":"User","site_admin":false},"created_at":"2018-06-21T12:33:32Z","updated_at":"2018-06-21T12:33:32Z","author_association":"MEMBER","body":"https://github.com/reicast/reicast-emulator/tree/master/core/hw/naomi"}}
{"actor":{"display_login":"LoungeKatt"}}