From 7da3c17f914ae200bc02c9bd4b8ef411bcd1615e Mon Sep 17 00:00:00 2001 From: Dennis Brown Date: Sun, 12 Mar 2017 00:11:17 -0600 Subject: [PATCH 01/16] do not need banner text --- app/index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/index.html b/app/index.html index 0905f9a..db915a8 100644 --- a/app/index.html +++ b/app/index.html @@ -6,7 +6,7 @@ - +
From aea805b6f105d9e4947bea508fbf3b2aeced71c9 Mon Sep 17 00:00:00 2001 From: Dennis Brown Date: Sun, 12 Mar 2017 00:11:42 -0600 Subject: [PATCH 02/16] add media query structure --- app/style.css | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/app/style.css b/app/style.css index b9c0e5f..4fd8673 100644 --- a/app/style.css +++ b/app/style.css @@ -35,6 +35,7 @@ font-family: monospace; overflow: auto; float: left; + /* disable size handle */ } .screen { @@ -99,3 +100,11 @@ font-size: 12px; color: #444; } + +@media (min-width: 600) { + +} + +@media (max-width: 200) { + +} \ No newline at end of file From 16839a0b4934d40c58138ac5ee52ad2bb00ab377 Mon Sep 17 00:00:00 2001 From: Dennis Brown Date: Sun, 12 Mar 2017 11:33:15 -0500 Subject: [PATCH 03/16] responsive testing --- app/style.css | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/app/style.css b/app/style.css index 4fd8673..eefd7cc 100644 --- a/app/style.css +++ b/app/style.css @@ -30,7 +30,8 @@ margin: 0 0 6px 0; padding: 6px; border: 1px solid black; - width: 420px; + max-width: 420px; + min-width: 200px; height: 290px; font-family: monospace; overflow: auto; From d2775a0855b72c816b17be614beabb4bf6479c13 Mon Sep 17 00:00:00 2001 From: Dennis Brown Date: Sun, 12 Mar 2017 11:33:24 -0500 Subject: [PATCH 04/16] fix app error --- app/electron/menu.js | 1 + 1 file changed, 1 insertion(+) diff --git a/app/electron/menu.js b/app/electron/menu.js index 5a85c20..4bff1ac 100644 --- a/app/electron/menu.js +++ b/app/electron/menu.js @@ -1,3 +1,4 @@ +const { app } = require('electron'); const OSXtemplate = [ { label: "Application", From 3c78d7b44889454335994f83ebd3e0e4939ac648 Mon Sep 17 00:00:00 2001 From: Dennis Brown Date: Sun, 12 Mar 2017 11:35:17 -0500 Subject: [PATCH 05/16] add response build version --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 4636ff7..828b993 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "6502desktop", - "version": "0.2.1", + "version": "0.3.0", "description": "Desktop version of 6502 Simulator", "main": "main.js", "scripts": { From 369d3e955d2e4e56d6a034ad2ca431d7fc5514ae Mon Sep 17 00:00:00 2001 From: Dennis Brown Date: Sun, 12 Mar 2017 16:32:50 -0500 Subject: [PATCH 06/16] fix format and add dev menu --- app/electron/menu.js | 57 ++++++++++++++++++++++++++++---------------- 1 file changed, 36 insertions(+), 21 deletions(-) diff --git a/app/electron/menu.js b/app/electron/menu.js index 4bff1ac..664e995 100644 --- a/app/electron/menu.js +++ b/app/electron/menu.js @@ -1,47 +1,62 @@ const { app } = require('electron'); const OSXtemplate = [ { - label: "Application", + label: 'Application', submenu: [ - { label: "About 6502Desktop", selector: "orderFrontStandardAboutPanel:" }, - { label: "Quit", accelerator: "Command+Q", click: function () { app.quit(); } } + { label: 'About 6502Desktop', selector: 'orderFrontStandardAboutPanel:' }, + { label: 'Quit', accelerator: 'Command+Q', click: function () { app.quit(); } } ] }, { - label: "Edit", + label: 'Edit', submenu: [ - { label: "Undo", accelerator: "Cmd+Z", selector: "undo:" }, - { label: "Redo", accelerator: "Shift+Cmd+Z", selector: "redo:" }, - { label: "Cut", accelerator: "Cmd+X", selector: "cut:" }, - { label: "Copy", accelerator: "Cmd+C", selector: "copy:" }, - { label: "Paste", accelerator: "Cmd+V", selector: "paste:" }, - { label: "Select All", accelerator: "Cmd+A", selector: "selectAll:" } + { label: 'Undo', accelerator: 'Cmd+Z', selector: 'undo:' }, + { label: 'Redo', accelerator: 'Shift+Cmd+Z', selector: 'redo:' }, + { label: 'Cut', accelerator: 'Cmd+X', selector: 'cut:' }, + { label: 'Copy', accelerator: 'Cmd+C', selector: 'copy:' }, + { label: 'Paste', accelerator: 'Cmd+V', selector: 'paste:' }, + { label: 'Select All', accelerator: 'Cmd+A', selector: 'selectAll:' } + ] + }, + { + label: 'View', + submenu: (process.env.NODE_ENV === 'development') ? [ + { label: '&Reload', accelerator: 'Ctrl+R', + click() { mainWindow.webContents.reload(); } }, + { label: 'Toggle &Full Screen', accelerator: 'F11', + click() { mainWindow.setFullScreen(!mainWindow.isFullScreen()); } + }, + { label: 'Toggle &Developer Tools', accelerator: 'Alt+Ctrl+I', + click() { mainWindow.toggleDevTools(); } } + ] : [ + { label: 'Toggle &Full Screen', accelerator: 'F11', + click() { mainWindow.setFullScreen(!mainWindow.isFullScreen()); } } ] } ] const PCtemplate = [ { - label: "File", + label: 'File', submenu: [ - { label: "Quit", accelerator: "Alt+F4", click: function () { app.quit(); } } + { label: 'Quit', accelerator: 'Alt+F4', click: function () { app.quit(); } } ] }, { - label: "Edit", + label: 'Edit', submenu: [ - { label: "Undo", accelerator: "Ctrl+Z", selector: "undo:" }, - { label: "Redo", accelerator: "Shift+Ctrl+Z", selector: "redo:" }, - { label: "Cut", accelerator: "Ctrl+X", selector: "cut:" }, - { label: "Copy", accelerator: "Ctrl+C", selector: "copy:" }, - { label: "Paste", accelerator: "Ctrl+V", selector: "paste:" }, - { label: "Select All", accelerator: "Ctrl+A", selector: "selectAll:" } + { label: 'Undo', accelerator: 'Ctrl+Z', selector: 'undo:' }, + { label: 'Redo', accelerator: 'Shift+Ctrl+Z', selector: 'redo:' }, + { label: 'Cut', accelerator: 'Ctrl+X', selector: 'cut:' }, + { label: 'Copy', accelerator: 'Ctrl+C', selector: 'copy:' }, + { label: 'Paste', accelerator: 'Ctrl+V', selector: 'paste:' }, + { label: 'Select All', accelerator: 'Ctrl+A', selector: 'selectAll:' } ] }, { - label: "Help", + label: 'Help', submenu: [ - { label: "About 6502Desktop", selector: "orderFrontStandardAboutPanel:" }, + { label: 'About 6502Desktop', selector: 'orderFrontStandardAboutPanel:' }, ] }, ] From e079ade8eaf0a37e4a5225ea16bc688468b6f177 Mon Sep 17 00:00:00 2001 From: Dennis Brown Date: Tue, 14 Mar 2017 01:03:02 -0500 Subject: [PATCH 07/16] hexdump issue addition --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index b8053c0..98d6d9f 100644 --- a/README.md +++ b/README.md @@ -19,6 +19,7 @@ First things first, clone the repository! ## ToDo List +* Fix Hexdump * Create Snazzy Icon (In process) * Test on Windows/Linux * Build Packages for Win/Linux Platforms (Mac build done) From a87a92008d3c2a6c61c4c2eb6854162b40676dbe Mon Sep 17 00:00:00 2001 From: Dennis Brown Date: Wed, 29 Mar 2017 16:38:39 -0500 Subject: [PATCH 08/16] fix linting --- .eslintrc.yaml | 149 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 149 insertions(+) create mode 100644 .eslintrc.yaml diff --git a/.eslintrc.yaml b/.eslintrc.yaml new file mode 100644 index 0000000..2ec2a6a --- /dev/null +++ b/.eslintrc.yaml @@ -0,0 +1,149 @@ +env: + node: true + es6: true + +parserOptions: + ecmaVersion: 2017 + +rules: + # Possible Errors + # http://eslint.org/docs/rules/#possible-errors + comma-dangle: [2, only-multiline] + no-control-regex: 2 + no-debugger: 2 + no-dupe-args: 2 + no-dupe-keys: 2 + no-duplicate-case: 2 + no-empty-character-class: 2 + no-ex-assign: 2 + no-extra-boolean-cast: 2 + no-extra-parens: [2, functions] + no-extra-semi: 2 + no-func-assign: 2 + no-invalid-regexp: 2 + no-irregular-whitespace: 2 + no-obj-calls: 2 + no-proto: 2 + no-template-curly-in-string: 2 + no-unexpected-multiline: 2 + no-unreachable: 2 + no-unsafe-negation: 2 + use-isnan: 2 + valid-typeof: 2 + + # Best Practices + # http://eslint.org/docs/rules/#best-practices + dot-location: [2, property] + no-fallthrough: 2 + no-global-assign: 2 + no-octal: 2 + no-redeclare: 2 + no-self-assign: 2 + no-throw-literal: 2 + no-unused-labels: 2 + no-useless-call: 2 + no-useless-escape: 2 + no-void: 2 + no-with: 2 + + # Strict Mode + # http://eslint.org/docs/rules/#strict-mode + strict: [2, global] + + # Variables + # http://eslint.org/docs/rules/#variables + no-delete-var: 2 + no-undef: 2 + no-unused-vars: [2, {args: none}] + + # Node.js and CommonJS + # http://eslint.org/docs/rules/#nodejs-and-commonjs + no-mixed-requires: 2 + no-new-require: 2 + no-path-concat: 2 + no-restricted-modules: [2, sys, _linklist] + no-restricted-properties: + - 2 + - object: assert + property: deepEqual + message: Use assert.deepStrictEqual(). + - object: assert + property: equal + message: Use assert.strictEqual() rather than assert.equal(). + - object: assert + property: notEqual + message: Use assert.notStrictEqual() rather than assert.notEqual(). + - property: __defineGetter__ + message: __defineGetter__ is deprecated. + - property: __defineSetter__, + message: __defineSetter__ is deprecated. + + # Stylistic Issues + # http://eslint.org/docs/rules/#stylistic-issues + block-spacing: 2 + brace-style: [2, 1tbs, {allowSingleLine: true}] + comma-spacing: 2 + comma-style: 2 + computed-property-spacing: 2 + eol-last: 2 + indent: ["error", 2, {CallExpression: {arguments: first}, + MemberExpression: 1, + SwitchCase: 1}] + key-spacing: [2, {mode: minimum}] + keyword-spacing: 2 + linebreak-style: [2, unix] + max-len: [2, {ignoreUrls: true, tabWidth: 2}] + new-parens: 2 + no-mixed-spaces-and-tabs: 2 + no-multiple-empty-lines: [2, {max: 2, maxEOF: 0, maxBOF: 0}] + no-tabs: 2 + no-trailing-spaces: 2 + one-var-declaration-per-line: 2 + operator-linebreak: [2, after] + quotes: [2, single, avoid-escape] + semi: 2 + semi-spacing: 2 + space-before-blocks: [2, always] + space-in-parens: [2, never] + space-infix-ops: 2 + space-unary-ops: 2 + unicode-bom: 2 + + # ECMAScript 6 + # http://eslint.org/docs/rules/#ecmascript-6 + arrow-parens: [2, always] + arrow-spacing: [2, {before: true, after: true}] + constructor-super: 2 + no-class-assign: 2 + no-confusing-arrow: 2 + no-const-assign: 2 + no-dupe-class-members: 2 + no-new-symbol: 2 + no-this-before-super: 2 + prefer-const: [2, {ignoreReadBeforeAssign: true}] + rest-spread-spacing: 2 + template-curly-spacing: 2 + + # Custom rules in tools/eslint-rules + align-multiline-assignment: 2 + +# Global scoped method and vars +globals: + COUNTER_HTTP_CLIENT_REQUEST: false + COUNTER_HTTP_CLIENT_RESPONSE: false + COUNTER_HTTP_SERVER_REQUEST: false + COUNTER_HTTP_SERVER_RESPONSE: false + COUNTER_NET_SERVER_CONNECTION: false + COUNTER_NET_SERVER_CONNECTION_CLOSE: false + DTRACE_HTTP_CLIENT_REQUEST: false + DTRACE_HTTP_CLIENT_RESPONSE: false + DTRACE_HTTP_SERVER_REQUEST: false + DTRACE_HTTP_SERVER_RESPONSE: false + DTRACE_NET_SERVER_CONNECTION: false + DTRACE_NET_STREAM_END: false + LTTNG_HTTP_CLIENT_REQUEST: false + LTTNG_HTTP_CLIENT_RESPONSE: false + LTTNG_HTTP_SERVER_REQUEST: false + LTTNG_HTTP_SERVER_RESPONSE: false + LTTNG_NET_SERVER_CONNECTION: false + LTTNG_NET_STREAM_END: false From 5b60c60479eb62d7baadfbe25bca0f63c82c6f9c Mon Sep 17 00:00:00 2001 From: Dennis Brown Date: Wed, 29 Mar 2017 16:38:54 -0500 Subject: [PATCH 09/16] update for vscode --- .gitignore | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/.gitignore b/.gitignore index 3065c9c..9539c74 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,7 @@ node_modules *.log -out \ No newline at end of file +out + + +#VSCode +.vscode/* \ No newline at end of file From 90a8026bc8bdf91f9d64157367e04eb13f69e6a0 Mon Sep 17 00:00:00 2001 From: Dennis Brown Date: Wed, 29 Mar 2017 16:39:48 -0500 Subject: [PATCH 10/16] Add div/default asm code --- app/index.html | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/app/index.html b/app/index.html index db915a8..2ba2cf7 100644 --- a/app/index.html +++ b/app/index.html @@ -5,8 +5,6 @@ Easy 6502 Desktop Simulator - -
@@ -17,7 +15,14 @@
- + @@ -42,6 +47,7 @@
+