8bitworkshop/index.html

398 lines
14 KiB
HTML
Raw Normal View History

2016-12-16 01:21:51 +00:00
<!DOCTYPE html>
<html lang="en">
<head>
2017-01-14 16:14:25 +00:00
<title>8bitworkshop</title>
2016-12-16 01:21:51 +00:00
<style type="text/css" media="screen">
body {
2017-01-06 14:49:07 +00:00
overflow: hidden !important;
2016-12-30 23:51:15 +00:00
font-size: 11px;
2016-12-16 01:21:51 +00:00
}
.dbg_info {
font-size: 0.8em;
}
.gutter-offset {
width: 3em;
}
.gutter-bytes {
width: 6em;
}
.gutter-clock {
width: 0.5em;
}
.gutter-info {
width: 1em;
}
2017-01-03 01:42:15 +00:00
.tooltipbox {
2016-12-16 01:21:51 +00:00
position: relative;
display: inline-block;
border-bottom: 1px dotted black;
}
2017-01-03 01:42:15 +00:00
.tooltipbox .tooltiptext {
2016-12-16 01:21:51 +00:00
visibility: hidden;
width: 120px;
background-color: black;
color: #fff;
text-align: center;
border-radius: 6px;
padding: 5px 0;
/* Position the tooltip */
position: absolute;
z-index: 10;
}
2017-01-03 01:42:15 +00:00
.tooltipbox:hover .tooltiptext {
2016-12-16 01:21:51 +00:00
visibility: visible;
}
2017-01-06 14:49:07 +00:00
#controls_top {
position: absolute;
2017-01-06 14:49:07 +00:00
padding: 0.5em;
height:3em;
width:100%;
background-color:#999;
}
#notebook {
position:absolute;
top:3em;
bottom:0;
left:0;
right:0;
2017-01-09 21:28:20 +00:00
background-color: #666;
2017-04-06 19:09:30 +00:00
overflow: hidden;;
2016-12-16 01:21:51 +00:00
}
2017-04-06 14:28:51 +00:00
div.workspace {
background-color:#999;
}
2016-12-16 01:21:51 +00:00
div.editor {
width:50%;
2016-12-30 23:51:15 +00:00
line-height:1.25;
font-size:12pt;
2016-12-16 01:21:51 +00:00
}
div.emulator {
position:absolute;
left:50%;
top:0;
width:50%;
background-color: #666;
2017-01-03 01:42:15 +00:00
margin-top: 20px auto 0;
2016-12-16 01:21:51 +00:00
}
2017-04-19 01:18:53 +00:00
div.debugwindow {
position:absolute;
left:50%;
top:0;
width:50%;
background-color: #666;
color: #66ff66;
white-space: pre;
margin-top: 20px auto 0;
font-family: "Andale Mono", "Menlo", "Lucida Console", monospace;
font-size: 10pt;
}
2016-12-16 01:21:51 +00:00
div.mem_info {
2017-01-03 01:42:15 +00:00
position: fixed;
left: 51%;
2016-12-16 01:21:51 +00:00
bottom: 10px;
background-color: #333;
color: #66ff66;
white-space: pre;
padding: 20px;
2017-04-19 01:18:53 +00:00
z-index: 12;
2016-12-31 16:05:22 +00:00
font-family: "Andale Mono", "Menlo", "Lucida Console", monospace;
font-size: 12pt;
2016-12-16 01:21:51 +00:00
}
.btn_group {
border-radius:6px;
padding:6px;
margin-left:8px;
background-color: #666;
}
.btn_group.debug_group {
}
.btn_group.view_group {
}
.seg_code { color: #ff9966; }
.seg_data { color: #66ff66; }
.seg_stack { color: #ffff66; }
.seg_unknown { color: #cccccc; }
2016-12-16 01:21:51 +00:00
span.hilite {
color: #ff66ff;
}
div.has-errors {
background-color: #ff6666 !important;
}
div.is-busy-unused {
background-color: #8888bb !important;
}
2016-12-16 01:21:51 +00:00
div.menu_div {
position: absolute;
width: 200px;
}
div.booklink {
position: fixed;
bottom: 0;
right: 0;
padding: 6px;
background-color: #ffffff;
display:none;
2016-12-16 01:21:51 +00:00
}
2016-12-27 02:45:04 +00:00
div.twitbtn {
position: fixed;
bottom: 0;
left: 50%;
padding: 6px;
}
2016-12-16 01:21:51 +00:00
a {
color:#333399;
font-weight: bold;
}
2016-12-30 23:51:15 +00:00
a.dropdown-toggle {
color:#66ee66;
padding:3px;
}
// http://stackoverflow.com/questions/18023493/bootstrap-3-dropdown-sub-menu-missing
.dropdown-submenu {
position:relative;
}
.dropdown-submenu>.dropdown-menu {
top:0;
left:100%;
margin-top:-6px;
margin-left:-1px;
-webkit-border-radius:0 6px 6px 6px;
-moz-border-radius:0 6px 6px 6px;
border-radius:0 6px 6px 6px;
}
.dropdown-submenu:hover>.dropdown-menu {
display:block;
}
.dropdown-submenu>a:after {
display:block;
content:" ";
float:right;
width:0;
height:0;
border-color:transparent;
border-style:solid;
border-width:5px 0 5px 5px;
border-left-color:#cccccc;
margin-top:5px;
margin-right:-10px;
}
.dropdown-submenu:hover>a:after {
border-left-color:#ffffff;
}
.dropdown-submenu.pull-left {
float:none;
}
.dropdown-submenu.pull-left>.dropdown-menu {
left:-100%;
margin-left:10px;
-webkit-border-radius:6px 0 6px 6px;
-moz-border-radius:6px 0 6px 6px;
border-radius:6px 0 6px 6px;
}
2017-04-22 19:02:34 +00:00
.emubevel {
padding:4%;
background:#333;
}
.emuvideo {
border-radius:20px;
border: 4px solid #222;
padding: 30px;
margin-top: 20px;
margin-bottom: 20px;
background: #000;
outline-color: #666;
}
canvas.pixelated {
image-rendering: optimizeSpeed; /* Older versions of FF */
image-rendering: -moz-crisp-edges; /* FF 6.0+ */
image-rendering: -webkit-optimize-contrast; /* Safari */
image-rendering: -o-crisp-edges; /* OS X & Windows Opera (12.02+) */
image-rendering: pixelated; /* Awesome future-browsers */
-ms-interpolation-mode: nearest-neighbor; /* IE */
}
2016-12-16 01:21:51 +00:00
</style>
</head>
<body>
<div id="controls_top">
<span class="dropdown">
<a class="btn btn-secondary dropdown-toggle" id="dropdownMenuButton" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
&#9776; <span class="caret"></span>
</a>
<ul class="dropdown-menu" aria-labelledby="dropdownMenuButton">
<li><a class="dropdown-item" href="#" id="item_new_file">New File...</a></li>
<li><a class="dropdown-item" href="#" id="item_share_file">Share File as GitHub Gist...</a></li>
<li><a class="dropdown-item" href="#" id="item_reset_file">Revert to Original...</a></li>
2017-02-02 19:11:52 +00:00
<li><a class="dropdown-item" href="#" id="item_download_rom">Download ROM Image...</a></li>
<li class="dropdown dropdown-submenu">
<a tabindex="-1" href="#">Platform</a>
<ul class="dropdown-menu">
<li><a class="dropdown-item" href="?platform=vcs" id="item_platform_vcs">Atari VCS</a></li>
2017-02-14 23:15:06 +00:00
<!--<li><a class="dropdown-item" href="?platform=apple2" id="item_platform_apple2">Apple ][</a></li>-->
<li><a class="dropdown-item" href="?platform=vicdual" id="item_platform_vicdual">VIC Dual</a></li>
2017-04-12 02:46:06 +00:00
<li><a class="dropdown-item" href="?platform=mw8080bw" id="item_platform_mw8080bw">Midway 8080</a></li>
2017-04-22 19:02:34 +00:00
<li><a class="dropdown-item" href="?platform=galaxian-scramble" id="item_platform_galaxian_scramble">Galaxian/Scramble Hardware</a></li>
2017-02-14 23:15:06 +00:00
<li><a class="dropdown-item" href="?platform=vector-z80color" id="item_platform_vector_z80color">Atari Color Vector (Z80)</a></li>
2017-03-26 23:14:55 +00:00
<li><a class="dropdown-item" href="?platform=williams-z80" id="item_platform_williams_z80">Williams (Z80)</a></li>
2017-04-02 18:54:51 +00:00
<li><a class="dropdown-item" href="?platform=sound_williams-z80" id="item_platform_sound_williams_z80">Williams Sound (Z80)</a></li>
</ul>
</li>
<li class="dropdown dropdown-submenu">
<a tabindex="-1" href="#">Debug</a>
<ul class="dropdown-menu">
<li><a class="dropdown-item" href="#" id="item_debug_expr">Break Expression...</a></li>
</ul>
</li>
</ul>
</span>
<select id="preset_select" name="">
</select>
2017-04-19 01:18:53 +00:00
<img id="compile_spinner" src="images/spinner.gif" height="20em" style="visibility:hidden;margin-left:8px;margin-right:8px">
<span class="btn_group debug_group" id="debug_bar">
<button id="dbg_reset" type="submit" title="Reset and Break"><span class="glyphicon glyphicon-refresh" aria-hidden="true"></span></button>
<button id="dbg_pause" type="button" title="Pause"><span class="glyphicon glyphicon-pause" aria-hidden="true"></span></button>
<button id="dbg_go" type="button" title="Run"><span class="glyphicon glyphicon-play" aria-hidden="true"></span></button>
<button id="dbg_step" type="submit" title="Step"><span class="glyphicon glyphicon-step-forward" aria-hidden="true"></span></button>
<button id="dbg_toline" type="submit" title="Run To Line"><span class="glyphicon glyphicon-save" aria-hidden="true"></span></button>
<button id="dbg_stepout" type="submit" title="Step Out of Subroutine"><span class="glyphicon glyphicon-hand-up" aria-hidden="true"></span></button>
<button id="dbg_stepback" type="submit" title="Step Backwards"><span class="glyphicon glyphicon-step-backward" aria-hidden="true"></span></button>
2017-04-19 01:18:53 +00:00
</span>
<span class="btn_group view_group" id="extra_bar">
<button id="dbg_timing" type="submit" title="See Timing" style="display:none"><span class="glyphicon glyphicon-time" aria-hidden="true"></span></button>
2017-04-19 01:18:53 +00:00
<button id="dbg_disasm" type="submit" title="Show Disassembly" style="display:none"><span class="glyphicon glyphicon-list" aria-hidden="true"></span></button>
<button id="dbg_memory" type="submit" title="Show Memory" style="display:none"><span class="glyphicon glyphicon-sunglasses" aria-hidden="true"></span></button>
<button id="dbg_profile" type="submit" title="Show Profile" style="display:none"><span class="glyphicon glyphicon-stats" aria-hidden="true"></span></button>
</span>
</div>
<div id="notebook">
2017-04-06 14:28:51 +00:00
<div id="workspace">
2017-01-06 14:49:07 +00:00
<div id="disassembly" class="editor">
</div>
<div id="editor" class="editor">
2016-12-16 01:21:51 +00:00
</div>
</div>
2017-01-03 01:42:15 +00:00
<div class="emulator" id="emulator">
2016-12-16 01:21:51 +00:00
<div id="javatari-screen" style="margin: 0 auto; box-shadow: 2px 2px 10px rgb(60, 60, 60);"></div>
<div id="javatari-console-panel" style="margin: 0 auto; box-shadow: 2px 2px 10px rgb(60, 60, 60);"></div>
2017-04-19 01:18:53 +00:00
</div>
<div id="mem_info" class="mem_info" style="display:none">
</div>
<div id="profileview" class="debugwindow" style="display:none;z-index:10">
</div>
<div id="memoryview" class="debugwindow" style="display:none;z-index:10">
2016-12-16 01:21:51 +00:00
</div>
</div>
2016-12-27 02:45:04 +00:00
<div class="twitbtn">
<a href="https://twitter.com/8bitworkshop" class="twitter-follow-button" data-show-count="false">Follow @8bitworkshop</a><script async src="//platform.twitter.com/widgets.js" charset="utf-8"></script>
</div>
<div class="booklink" id="booklink_vcs">
2016-12-26 17:36:37 +00:00
<a target="_new" href="https://www.amazon.com/gp/product/1541021304/ref=as_li_qf_sp_asin_il_tl?ie=UTF8&tag=pzp-20&camp=1789&creative=9325&linkCode=as2&creativeASIN=B01N4DSRIZ&linkId=04d39e274c06e6c93b93d20a9a977111">
2016-12-17 15:13:53 +00:00
<img src="https://images-na.ssl-images-amazon.com/images/I/5153Bd8oWeL._AC_AC_SR98,95_.jpg" style="float:right"/></a>
2016-12-16 01:21:51 +00:00
Want to learn more?<br>
2017-04-26 19:44:55 +00:00
Get the book<br>
2016-12-26 17:36:37 +00:00
<a target="_new" href="https://www.amazon.com/gp/product/1541021304/ref=as_li_qf_sp_asin_il_tl?ie=UTF8&tag=pzp-20&camp=1789&creative=9325&linkCode=as2&creativeASIN=B01N4DSRIZ&linkId=04d39e274c06e6c93b93d20a9a977111">
2016-12-16 01:21:51 +00:00
Making Games For The Atari 2600</a>
</div>
2017-04-26 19:44:55 +00:00
<div class="booklink" id="booklink_arcade">
<a target="_new" href="https://www.amazon.com/gp/product/B0713RQL8X/ref=as_li_tl?ie=UTF8&camp=1789&creative=9325&creativeASIN=B0713RQL8X&linkCode=as2&tag=pzp-20&linkId=e8e05e34acf1b54d81aced148a67790c">
<img height="72em" src="https://images-na.ssl-images-amazon.com/images/I/51RaEXf%2B%2BNL._SL500_AA130_.jpg" style="float:right"/></a>
New book!<br>
<a target="_new" href="https://www.amazon.com/gp/product/B0713RQL8X/ref=as_li_tl?ie=UTF8&camp=1789&creative=9325&creativeASIN=B0713RQL8X&linkCode=as2&tag=pzp-20&linkId=e8e05e34acf1b54d81aced148a67790c">
Making 8-bit Arcade Games in C</a>
</div>
2016-12-16 01:21:51 +00:00
2017-04-20 00:55:13 +00:00
<div id="welcomeModal" class="modal fade">
<div class="modal-dialog modal-lg" role="document">
<div class="modal-content">
<div class="modal-header">
<h3 class="modal-title">Welcome to 8bitworkshop!</h3>
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
<span aria-hidden="true">&times;</span>
</button>
</div>
<div class="modal-body">
<p>What would you like to start programming?</p>
<div class="container-fluid">
<div class="row">
<div class="col-md-6">
<img data-dismiss="modal" class="img-responsive" data-platform="vcs" src="images/atarivcs.jpg" alt="Atari 2600 four-switch wood veneer version, dating from 1980-1982 (photo by Evan Amos)"/>
</div>
<div class="col-md-6">
<img data-dismiss="modal" class="img-responsive" data-platform="vicdual" src="images/arcadegames.jpg" alt="Galaxian arcade system board (photo by Dennis van Zuijlekom, CC BY-SA 2.0)"/>
</div>
</div>
<div class="row">
<div class="col-md-3 col-md-offset-2">
<button type="button" class="btn btn-secondary" data-platform="vcs" data-dismiss="modal">Atari VCS</button>
</div>
<div class="col-md-3 col-md-offset-2">
<button type="button" class="btn btn-secondary" data-platform="vicdual" data-dismiss="modal">Arcade Games</button>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
2016-12-16 01:21:51 +00:00
<script src="jquery/jquery-2.2.3.min.js"></script>
2016-12-30 23:51:15 +00:00
<link rel="stylesheet" href="bootstrap/css/bootstrap.min.css">
<script src="bootstrap/js/bootstrap.min.js"></script>
<link rel="stylesheet" href="bootstrap/css/bootstrap-tour.min.css">
2016-12-30 23:51:15 +00:00
<script src="bootstrap/js/bootstrap-tour.min.js"></script>
2016-12-18 20:59:31 +00:00
2016-12-16 01:21:51 +00:00
<script src="codemirror/lib/codemirror.js"></script>
<script src="codemirror/mode/clike/clike.js"></script>
2016-12-16 01:21:51 +00:00
<script src="codemirror/mode/6502/6502.js"></script>
<script src="codemirror/mode/z80/z80.js"></script>
2016-12-16 01:21:51 +00:00
<link rel="stylesheet" href="css/codemirror.css">
<script src="codemirror/addon/edit/matchbrackets.js"></script>
2016-12-16 01:21:51 +00:00
<script src="codemirror/addon/search/search.js"></script>
<script src="codemirror/addon/search/searchcursor.js"></script>
<script src="codemirror/addon/search/jumpToLine.js"></script>
<script src="codemirror/addon/dialog/dialog.js"></script>
2017-01-08 15:51:19 +00:00
<script src="codemirror/addon/selection/active-line.js"></script>
2016-12-16 01:21:51 +00:00
<link rel="stylesheet" href="codemirror/addon/dialog/dialog.css">
<script src="javatari.js/release/javatari/javatari.js"></script>
<script src="src/cpu/z80.js"></script>
2017-01-20 03:42:58 +00:00
<script src="src/cpu/6809.js"></script>
<script src="tss/js/tss/PsgDeviceChannel.js"></script>
<script src="tss/js/tss/MasterChannel.js"></script>
<script src="tss/js/tss/AudioLooper.js"></script>
<script src="tss/js/Log.js"></script>
2017-04-20 00:55:13 +00:00
<!--
2017-01-20 03:42:58 +00:00
<script src="local/williams/defender.js"></script>
2017-01-20 22:54:02 +00:00
<script src="local/williams/robotron.js"></script>
2017-02-05 04:19:54 +00:00
<script src="local/atarivec/gravitar/gravitar.js"></script>
2017-04-20 00:55:13 +00:00
-->
2017-02-02 19:11:52 +00:00
<script src="FileSaver.js/FileSaver.min.js"></script>
2017-01-25 17:30:05 +00:00
<script src="octokat.js/dist/octokat.js"></script>
2017-02-02 19:11:52 +00:00
2017-04-19 01:18:53 +00:00
<script src="src/vlist.js"></script>
2017-01-03 01:42:15 +00:00
<script src="src/emu.js"></script>
2017-04-02 18:54:51 +00:00
<script src="src/audio.js"></script>
<script src="src/util.js"></script>
2017-01-06 14:49:07 +00:00
<script src="src/disasm.js"></script>
2016-12-16 01:21:51 +00:00
<script src="src/ui.js"></script>
2017-04-20 00:55:13 +00:00
<!-- <script src="src/audio/votrax.js"></script> -->
2017-01-25 17:30:05 +00:00
2017-01-14 16:14:25 +00:00
<script>
startUI(true);
</script>
2016-12-16 01:21:51 +00:00
</body>
<script>
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
})(window,document,'script','https://www.google-analytics.com/analytics.js','ga');
ga('create', 'UA-54497476-9', 'auto');
ga('send', 'pageview');
</script>
</html>