{"action":"published","release":{"url":"https://api.github.com/repos/jeffpar/pcjs/releases/1319402","assets_url":"https://api.github.com/repos/jeffpar/pcjs/releases/1319402/assets","upload_url":"https://uploads.github.com/repos/jeffpar/pcjs/releases/1319402/assets{?name}","html_url":"https://github.com/jeffpar/pcjs/releases/tag/v1.18.0","id":1319402,"tag_name":"v1.18.0","target_commitish":"master","name":"Enabled 80386 support","draft":false,"author":{"login":"jeffpar","id":645749,"avatar_url":"https://avatars.githubusercontent.com/u/645749?v=3","gravatar_id":"","url":"https://api.github.com/users/jeffpar","html_url":"https://github.com/jeffpar","followers_url":"https://api.github.com/users/jeffpar/followers","following_url":"https://api.github.com/users/jeffpar/following{/other_user}","gists_url":"https://api.github.com/users/jeffpar/gists{/gist_id}","starred_url":"https://api.github.com/users/jeffpar/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jeffpar/subscriptions","organizations_url":"https://api.github.com/users/jeffpar/orgs","repos_url":"https://api.github.com/users/jeffpar/repos","events_url":"https://api.github.com/users/jeffpar/events{/privacy}","received_events_url":"https://api.github.com/users/jeffpar/received_events","type":"User","site_admin":false},"prerelease":false,"created_at":"2015-05-20T18:18:08Z","published_at":"2015-05-20T19:16:39Z","assets":[],"tarball_url":"https://api.github.com/repos/jeffpar/pcjs/tarball/v1.18.0","zipball_url":"https://api.github.com/repos/jeffpar/pcjs/zipball/v1.18.0","body":"This is the first release that includes 80386 support in the compiled PCjs code.\r\n\r\nDon't get too excited though.  80386 support is dormant until enabled by a machine configuration that specifies *model=\"80386\"* in the **&lt;cpu&gt;** component, and to be functional, the machine should also specify *buswidth=\"32\"* in the **&lt;computer&gt;** component.\r\n\r\nBecause PCjs started as an *IBM PC* simulation, and because I have no interest (yet) in emulating PS/2 machines, that rules out IBM's first 80386-based machine: the PS/2 Model 70.\r\n\r\nSo for now, the first and perhaps only 80386-based machine that PCjs will support is the [Compaq DeskPro 386](/devices/pc/machine/compaq/deskpro386/).  I've obtained DeskPro 386-16 and 386-25 motherboards, dumped their ROMs, and placed JSON-encoded copies of them in the [/devices/pc/bios/compaq](/devices/pc/bios/compaq/) folder.  I also have ROMs from early [Compaq EGA](/devices/pc/video/compaq/ega/) and [Compaq VGA](/devices/pc/video/compaq/vga/) boards, but for preliminary VGA testing, I'm starting with an [IBM VGA](/devices/pc/video/ibm/vga/) ROM -- unless I run into unexpected hardware dependencies, in which case I'll switch to the earliest [Compaq VGA](/devices/pc/video/compaq/vga/) ROM I have, dated 10/27/87.\r\n\r\nDeskPro 386 machine configurations have successfully booted 80386-enabled versions of DOS (eg, FreeDOS), and have passed some very minimal 32-bit instruction and paging tests, but more work and testing remains.\r\n\r\nPCjs v1.18.0 also includes some 80286 fixes, which makes it possible to boot an old 1986 version of Unix from [Microport](/disks/pc/unix/microport/)."}}