{"action":"created","issue":{"url":"https://api.github.com/repos/project64/project64/issues/883","labels_url":"https://api.github.com/repos/project64/project64/issues/883/labels{/name}","comments_url":"https://api.github.com/repos/project64/project64/issues/883/comments","events_url":"https://api.github.com/repos/project64/project64/issues/883/events","html_url":"https://github.com/project64/project64/pull/883","id":126881961,"number":883,"title":"Glide64 change default plugin","user":{"login":"AmbientMalice","id":10704701,"avatar_url":"https://avatars.githubusercontent.com/u/10704701?v=3","gravatar_id":"","url":"https://api.github.com/users/AmbientMalice","html_url":"https://github.com/AmbientMalice","followers_url":"https://api.github.com/users/AmbientMalice/followers","following_url":"https://api.github.com/users/AmbientMalice/following{/other_user}","gists_url":"https://api.github.com/users/AmbientMalice/gists{/gist_id}","starred_url":"https://api.github.com/users/AmbientMalice/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/AmbientMalice/subscriptions","organizations_url":"https://api.github.com/users/AmbientMalice/orgs","repos_url":"https://api.github.com/users/AmbientMalice/repos","events_url":"https://api.github.com/users/AmbientMalice/events{/privacy}","received_events_url":"https://api.github.com/users/AmbientMalice/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":107,"created_at":"2016-01-15T14:22:59Z","updated_at":"2016-01-25T20:21:02Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/project64/project64/pulls/883","html_url":"https://github.com/project64/project64/pull/883","diff_url":"https://github.com/project64/project64/pull/883.diff","patch_url":"https://github.com/project64/project64/pull/883.patch"},"body":"I'm splitting the old PR into two different PRs. One (this one) to switch the default plugin -- and another, far more extensive and painful, to update the RDB to reflect Glide64's much higher compatiblity. (And unique bugs of its own.)"},"comment":{"url":"https://api.github.com/repos/project64/project64/issues/comments/174649630","html_url":"https://github.com/project64/project64/pull/883#issuecomment-174649630","issue_url":"https://api.github.com/repos/project64/project64/issues/883","id":174649630,"user":{"login":"cxd4","id":1396303,"avatar_url":"https://avatars.githubusercontent.com/u/1396303?v=3","gravatar_id":"","url":"https://api.github.com/users/cxd4","html_url":"https://github.com/cxd4","followers_url":"https://api.github.com/users/cxd4/followers","following_url":"https://api.github.com/users/cxd4/following{/other_user}","gists_url":"https://api.github.com/users/cxd4/gists{/gist_id}","starred_url":"https://api.github.com/users/cxd4/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/cxd4/subscriptions","organizations_url":"https://api.github.com/users/cxd4/orgs","repos_url":"https://api.github.com/users/cxd4/repos","events_url":"https://api.github.com/users/cxd4/events{/privacy}","received_events_url":"https://api.github.com/users/cxd4/received_events","type":"User","site_admin":false},"created_at":"2016-01-25T20:21:02Z","updated_at":"2016-01-25T20:21:02Z","body":">why wasteful?\r\n\r\nBecause in the case I described, there is no reason for the CPU to make extra calls to signify (to the graphics plugin) reads/writes in conjunction with the FB done by the CPU, if it's constantly being done anyway.  Because if it's constantly being done every frame or something, then the CPU notifying the VI becomes extraneous operations and the graphics plugin can just behave accurately, without hacks, and routinely update frame buffer pixels regardless of when the core emulator suggests the need to synchronise (if some hypothetical case in some ROM has this constantly happening all the time anyway).\r\n\r\nThat's what I'm referring to when I describe optimizing the \"worst-case scenario\", as far as this goes."}}