diff --git a/html_orig/_debug_replacements.php b/html_orig/_debug_replacements.php
index bbaa401..ef20620 100644
--- a/html_orig/_debug_replacements.php
+++ b/html_orig/_debug_replacements.php
@@ -14,12 +14,13 @@ return [
 	'%btn4%' => '4',
 	'%btn5%' => '5',
 
-	'%screenData%' => '{
+	'%screenData%' => 'HELLOxNRE3',//'\u000b\u0001\u001b\u0001\u0001\u0001\u0001\u0001\f\u0005\u0001\u0010\u0003HELLOx\u0002\u000b\u0001\u0001N\u0001RE\u00023\u0001', //,
+	/*'{
 		 "w": 26, "h": 10,
-		 "x": 0, "y": 0,
-		 "cv": 1,
-		 "screen": "70 t259"
-	}',
+		 "x": 10, "y": 5,
+		 "cv": 1, "fg": 10, "bg": 2,
+		 "screen": ""
+	}',//"70 t259"*/
 
 	'%opmode%' => '2',
 	'%sta_enable%' => '0',
@@ -65,4 +66,6 @@ return [
 	'%uart_baud%' => 115200,
 	'%uart_stopbits%' => 1,
 	'%uart_parity%' => 2,
+
+	'%theme%' => 5,
 ];
diff --git a/html_orig/css/app.css b/html_orig/css/app.css
index 5e352c3..88ee2fe 100644
--- a/html_orig/css/app.css
+++ b/html_orig/css/app.css
@@ -311,7 +311,7 @@ th {
 /* Fontello data, processed by the unpack script. */
 @font-face {
   font-family: 'fontello';
-  src: url("data:application/octet-stream;base64,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") format("woff"), url("data:application/octet-stream;base64,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") format("truetype"); }
+  src: url("data:application/octet-stream;base64,d09GRgABAAAAABpEAA8AAAAAKoQAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAABHU1VCAAABWAAAADsAAABUIIslek9TLzIAAAGUAAAAQwAAAFZ5SGGsY21hcAAAAdgAAAC0AAACRiyLNmJjdnQgAAACjAAAABQAAAAgBzn/aGZwZ20AAAKgAAAFkAAAC3CKkZBZZ2FzcAAACDAAAAAIAAAACAAAABBnbHlmAAAIOAAADucAABY0K3eBf2hlYWQAABcgAAAAMwAAADYOwiwhaGhlYQAAF1QAAAAgAAAAJAfjBBtobXR4AAAXdAAAACgAAAA4NCv/+WxvY2EAABecAAAAHgAAAB4pCCIObWF4cAAAF7wAAAAgAAAAIAF+DbpuYW1lAAAX3AAAAXcAAALNzJ0dH3Bvc3QAABlUAAAAdAAAAJthm4blcHJlcAAAGcgAAAB6AAAAhuVBK7x4nGNgZGBg4GIwYLBjYHJx8wlh4MtJLMljkGJgYYAAkDwymzEnMz2RgQPGA8qxgGkOIGaDiAIAJjsFSAB4nGNgZN7FOIGBlYGBqYppDwMDQw+EZnzAYMjIBBRlYGVmwAoC0lxTGByUNf7/Z275P4chirmFIQUozAiSAwAJOgzEAHic5ZE7DsJADERn8+MbCaHcAGlNQcNZcoUUVDlBjkETzkBHz6UItGFs0/C5AV69XXkkr6wZADmAlOxIBoQTArSOVIPpKeamZziwX2NFJdlsYx672EsltTTSjiPwS/uowPn3o1rCHzNuUmCCKYXia+7/amn3+dWV6q6jqcTcoXOInaMpxt7RJKVyNGGpHToMaRx6DWkduh5upQHMEIa9ASYfhqsBLPg+DN0u3C8Gd3sC1ZomOHicY2BAAxIQyNzyfw4IAwAVjASleJytVml300YUHXlJnIQsJQstamHExGmwRiZswYAJQbJjIF2crZWgixQ76b7xid/gX/Nk2nPoN35a7xsvJJC053Cak6N3583VzNtlElqS2AvrkZSbL8XU1iaN7DwJ6YZNy1F8KDt7IWWKyd8FURCtltq3HYdERCJQta6wRBD7HlmaZHzoUUbLtqRXTcotPekuW+NBvVXffho6yrE7oaRmM3RoPbIlVRhVokimPVLSpmWo+itJK7y/wsxXzVDCiE4iabwZxtBI3htntMpoNbbjKIpsstwoUiSa4UEUeZTVEufkigkMygfNkPLKpxHlw/yIrNijnFawS7bT/L4vead3OT+xX29RtuRAH8iO7ODsdCVfhFtbYdy0k+0oVBF213dCbNnsVP9mj/KaRgO3KzK90IxgqXyFECs/ocz+IVktnE/5kkejWrKRE0HrZU7sSz6B1uOIKXHNGFnQ3dEJEdT9kjMM9pg+Hvzx3imWCxMCeBzLekclnAgTKWFzNEnaMHJgJWWLKqn1rpg45XVaxFvCfu3a0ZfOaONQd2I8Ww8dWzlRyfFoUqeZTJ3aSc2jKQ2ilHQmeMyvAyg/oklebWM1iZVH0zhmxoREIgIt3EtTQSw7saQpBM2jGb25G6a5di1apMkD9dyj9/TmVri501PaDvSzRn9Wp2I62AvT6WnkL/Fp2uUiRen66Rl+TOJB1gIykS02w5SDB2/9DtLL15YchdcG2O7t8yuofdZE8KQB+xvQHk/VKQlMhZhViFZAYq1rWZbJ1awWqcjUd0OaVr6s0wSKchwXx76Mcf1fMzOWmBK+34nTsyMuPXPtSwjTHHybdT2a16nFcgFxZnlOp1mW7+s0x/IDneZZntfpCEtbp6MsP9RpgeVHOh1jeUELmnTfwZCLMOQCDpAwhKUDQ1hegiEsFQxhuQhDWBZhCMslGMLyYxjCchmGsLysZdXUU0nj2plYBmxCYGKOHrnMReVqKrlUQrtoVGpDnhJulVQUz6p/ZaBePPKGObAWSJfIml8xzpWPRuX41hUtbxo7V8Cx6m8fjvY58VLWi4U/Bf/V1lQlvWLNw5Or8BuGnmwnqjapeHRNl89VPbr+X1RUWAv0G0iFWCjKsmxwZyKEjzqdhmqglUPMbMw8tOt1y5qfw/03MUIWUP34NxQaC9yDTllJWe3grNXX27LcO4NyOBMsSTE38/pW+CIjs9J+kVnKno98HnAFjEpl2GoDrRW82ScxD5neJM8EcVtRNkja2M4EiQ0c84B5850EJmHqqg3kTuGGDfgFYW7BeSdconqjLIfuRezzKKT8W6fiRPaoaIzAs9kbYa/vQspvcQwkNPmlfgxUFaGpGDUV0DRSbqgGX8bZum1Cxg70Iyp2w7Ks4sPHFveVkm0ZhHykiNWjo5/WXqJOqtx+ZhSX752+BcEgNTF/e990cZDKu1rJMkdtA1O3GpVT15pD41WH6uZR9b3j7BM5a5puuiceel/TqtvBxVwssPZtDtJSJhfU9WGFDaLLxaVQ6mU0Se+4BxgWGNDvUIqN/6v62HyeK1WF0XEk307Ut9HnYAz8D9h/R/UD0Pdj6HINLs/3mhOfbvThbJmuohfrp+g3MGutuVm6BtzQdAPiIUetjrjKDXynBnF6pLkc6SHgY90V4gHAJoDF4BPdtYzmUwCj+Yw5PsDnzGHQZA6DLeYw2GbOGsAOcxjsMofBHnMYfMGcdYAvmcMgZA6DiDkMnjAnAHjKHAZfMYfB18xh8A1z7gN8yxwGMXMYJMxhsK/p1jDMLV7QXaC2QVWgA1NPWNzD4lBTZcj+jheG/b1BzP7BIKb+qOn2kPoTLwz1Z4OY+otBTP1V050h9TdeGOrvBjH1D4OY+ky/GMtlBr+MfJcKB5RdbD7n74n3D9vFQLkAAQAB//8AD3icxVh7jFzVeT/fed3n3HnduXe9Ozu7O7s7s+yuZ/HsPMyuvQx+7WIPrlmvzS4CvOUVF8eYugZUIqcIrIgEBFGkEJoSYxdQq6hQQkKfCeofQKpEVaGVjNM0Uguq6uaPSK0ctaIw9HdmFkoUtY36RzuPc+455zvf+c7vfOd7XJZk+Mgr+YvMYzEbZTNsni2yg+wIO8buZw+zJ9gz7Fn2TfZY6/NLxAUtsgIbUIWBW/rjXNJTKgoDV0qh5PqmdMKRoi/l25KT4L+ctThlNGd5YutDlB8czC+jyg+ussH8YPvcuZd//+u/c+7Zc8/+9vlnnv7qU1/+0hOPff5zDz94+oH7T/3q3ceO3nHrkZvWDi8fuG7v4q5rFua3zm58qsNqcKqZC6eouJ1q81T95HP5E8+UC0dHzPPsSHX8v6CJf4H++Gd5/k80ddPOpkfSlA41BCjV07UGRIguOHUHvyXntIPfUq/FtzmdguPQO07nt5yGg9/GwAXbtOzFjVavertH0nmnVz/xUQWOC3hYfP+IuDQx9P6RwcnJQXG+MPlv3Vmf65W9qT/4ua6nfu65V1Ku27Xxe61L5HQO0uWOb/5mDbpcmJyE+hBjH74vzouTbIjVW24m6UIhGKfFfS/lD6y2fCLG2T2Mc59fO9By0eAn0MfuXHtlMIyFiqcoTFI2FwY0Q5YGZrVmtmzK8WajOkQqEueT37vSz/n//p4f+XTl94Mh6vusN+yfpr5hPuAnX+/8k++lyDpzxsq40qb49aSfUxOdOO5MqK5874o1sZ1tYQut+UkSanyQS8EXmRQkJB1nRrX5MaaYkEqsQ0LGVyAwW8UDa19Rj0fjMa36IWjArWKpXKpdTY0oLtBsdUFUeFFbcaShA6VyvdYYogX0F7hY23Xy3OH1F7dJ1dZpecV9O+eOHpjklfanT9w+cV06G7+XDGk6vbTtq8s3nD21g75oSr58rQ7kdYp0fa7SvuvUXe3KxPh1qc1R8F5fNrN01cKuU2eBucaenpMz4jPMZhk2wB5gf8D+mT3d+s2f/IDL4K6bubLf/PY9gqlXf+/cvcvt3aODDrFvnm0JTnObueZffpB7wlr8xx/yYPdD5O1yyXaUY6vjTHOLa+s4C5h0ArnOHJs5K0wliJFigEYTXzFHagmy1pnwPLHChPBWmSe89j+8+903vv67j37h+Kdvv/XGtVp1ajIbhmE2kzTY1UpFHUbVhqqVAorNkzBdBao2rFyok6StKI5CK6DiDJ7xNYjWy6UylKKrDwvULM1QhXDVGjiApjmIpgF7CA18cfeiIYpiqE0c5cIuxyEqEC4u2EWmHDW8i+WArB5LsAA3TEYDLGermB2DeZeBkSf9ybmlcnfuLziVLq/ct4IfvTC9dZom56Zpo75oyxu0nx2S0t+VUq1cpC2ZOKrdRDbeIRP6gFRjdsI6pGxbHba8Hp2rdSvbpy1hCAmU16iEul72pe2EPqQ13XlQu3m+i1Ru0PM9a1rQLjHoWgcPWu6gqKVITtrpdD6WfCfPO+jeoJ60u9TyvyWmL86bfay8OzjNJ4Zw9/kaivnJyb/4FGQJsvHAuPZleoesenrbQMKGQH5Vyn1Jpexpvy9KkG0dVR9TqhQoXXtbf5fS22IopS7kEgNZn9udv9zv2Mng6oDziYFxIq9GE5yjnbSd/Y6TSpiRglODEk7EVDZDiZTDZzHWm1U2Q36t3JvkYJL98SSPqPzxJLtruxgTz/PvsRwbbPUnoeXwcZz4CQzRCQzeGcZhz0ZZRnGoe/WhcN0iEs+nOsOp6VTnx8lkG/VzdDfKdoovRRhIJinqNlPP04lUqp1k4sMPYIuOwBYlWZPtYkut3VeQEg5xGEnYIy5gmI4zobhQx5jFuLT4OuxS7/IRznkFEupVpkm3c4WpbFQqjdoqPzVer5VwXfQghRGuQSNbq9Bo0dKQcbaKO1KFTmpcLfiq7ri5QAsihs0tVjiGcUkuu/Yx2+0WTyzctOWRRSexV2pHFca3TkYDo9uoO9SXybuF0H/75BuX/vxu/cC3L//JZ898NM2l39iyUrk/4TWlVRooZHL9fnLHeIiBTNFL6f78xPK9r5069dqPTbFhly+JBZZnI61Cuos9J4O7MO6BWJxLeAgg8lKFUwrYlysC9rUJ2xpD9mpkjoQuB17nuaQ7Wex//HRxaaGSDadbe0ZPP/5g53l30KUDSbfRODD+mS9Q32QxF45N9NNjP32w8w23u/6/8KfEfSxkm1+h7vL7XhqDy/KMYtyDtk/wWM7HqrD2rTjmKppyeGSMS1cbmj1FCPnjnbfpCte92ct7nVs9j866Bfdml/9t52Ln7e6jS8+gprOed7NbMGrX1QXjl3z6Dv0rv3/fS86B1Wu2se+wP2V/hMDrSfYIDL0A6RPM+FDB/ob9NTvO1tj1bAdbYLNsmG1irlETOktP0ZP0GD1KD9C9dAfdRoL9Pfs75oODRQfpOprAfBt6c5l+SG/R9+nP6FXaSrPoI9PPFgf2veRi/Z0bqz/CpFE8SEOYqf4PZLAQej6JJ+Oy9wz8/wGxttY9iVadcWEJDmdoaWHpY0zbQtvHmE3CpmNQj7vhVIVgK6iYWFW4vUy0ezC25iTiDK7EHYxbilu4zFr1eKgeD/WfPJTq8VCHsXe1d+B/ufLa2jWbjFbTRbpAf0x/SDfQYfZd9jp7hX2LfYO9yH6d3QeMEDsADcLfxXIIXXH5P7IDBMdYXaA6PG0jLhknezXpUj20aiVdr8gZKLyJ0cJJCou6aDXKpdFGqTxb4eWK6cZFgD+3jC83rlwX8QA3WS5Z5l8tWQs0apiWI+O+G9VoNqqVq10CHRtiLFAGW3Atl0y7YLyphaV0ZFWoHJVHiyYWaNbisraqhhV8bsk4aAsSYKq2CjxsRhamYWK5pKNZw2cIAjX1kIDl0IZfHVRRs1Gu8LqJHnSBz0LuakEOiajaje2iZtGEDrkCxY06uKAwuy814moD28W2Qp0bbRhvgH6raAWiBBFMu2zkgpGtYR9RA5wgcNQscKDTaJqocYEQ1tQrgKAbx5SroChCGoQykSmbUaO0QLlmY9TIaACu1gGIQKiB8KWBGMj8koSd5YBXBaeWpFKjZHBv6FxAuQo1IXhkgqg41BG9cOqNkx9ZbMpyG+GuFOlc1iV4XI1QTkvpKi3JhicSQuIDD8MRFEoNSrJ9UnmEzBwEAXHLAQlB68hyuVQJIcIgK23EhsSVwynraMmVdoUtofxCO+CmHMTWgitJgeUlZUqAK2J121RgLCSXGSV8H8tzf9OA0EpllfBkwsNCWtrSkddXpeJaCepzIYOSRk4sScRdy8pICwkoss8AbR5wyXnSFmAtFEkYX3BQvsWFLRwr0hrBVUqG4APmIkAW4Co77XJ8SHG0uPAFBxqQDxfRwzrcDoWNCWbfyuS4JEj2CUdAAJHggYEDmQ/XkAE4SWnZyvIlGgiaVVcQX/IMpnMVOJy7NqDS2lKO7/7Krx2As0lgfs6YDQO08nHn8SEjuYsT4oAaRBBEeknijkti+4YvRdH5EdngBmKhPJCBhU+u1cWVOIIuDVwlmcNFhWduG1hN/oOztoRtuZZUWvlGNbA13wEoClsQaS4C2/QLB8cqNAXSBUuFbbnSsixylG3ZAEkYLKEOrhCBGVYIXhA0JLkwxiwAAFLjCyE2/5I0py510oUMSgKP0OOk+znF0DihQiFSwFjaypbk9SWUj11L3w5kQK4XWjCfgBxnkRGulI7SXLhdgHnKzhj9hRwuwh1zlMA7pZLGFnMPm0ZT9gVOoByCVgJqgI5rongSOtJNBIWtEPraADLgrqvQIT1HGdXAGWDPEhcCEGjC9jDRnDuKTiJ3yOxZ8ySZewCouSs0uoBuoLmhMfpk+Ki8nXYCx+cyZcHNmjjoPP8pLPIm+LIb2b7W0try/kXQJ4y344sOWbZ1gtncPmFERHQKe2+SaMVOMAVlRoamTFSodPvQyujgvmYxM5XPumpwahymvSIWeIHUx09xrWRiQxhSmFMrLIimyWObSL2kVazIXnaDPzIapDWxMUgmo6E7gmJlDBAPVwsZuu0TjdX918SHJ9bLh/p2tGmssby3cktl7/LW4meL0d6Vuw5Xp5Zu2t+ey462k/ntN25fvvHg3rmb5geT7R9FlQk+Vp2oFeXkdN/PNHbe4mvt37Jzy9J0BBvVP9H+0qndUwvFEAfq9hW3ju0+dWZtc7V11fRMmKlM0lWtLZvXNrA0MZVgI8j3d7PrW/unJkeLuEO0mDAnbvM9zLWgWi6yW5vBryLj1/CHmm7BITPHYcumZs4qc5jTbm3fWo9Ls+nsfDqd8szrp5H6iJpN17qpqMlczXuecn00PVvvveuxxEYwboJtQNtQGy+Dyhsvg4xjuUAvmNcpS776GrShEHdejQq0tDSco7eiYbqAeNryqVfeXog/yMBtDEdcxY3k06lo6sIFumz3W09rny5Fw8PRpQ8a3ZoKL5tY/GUz1/3gPdPFfxIN9wVfSza6r/q6hck/XMRMc2yZPdp6ZJE8ewbQ5GBUEXmTXEwnuGdr29PHkVlZ0mQhx5PGLJn7cdxEDrbvGvRgl/U6uBozs96NPUx+wlYDsGHt+fmREUTCbH55frm9b/fO1tUjcyNztdnNU+Vxb9gb7t+UzSQDrZhLbgYx/jggqi1QZIW6Ca9WhD/rvg1a4JHJqdFpwoxiIEZ73WR83EY/170EHQn52LDsdvN57wDtmV6i5cdocmlpTxS5K2r6oYfOTKmVx7VuP3RoZn3P1mHurOi9b178q2s1eq3bLnYu3G5pZ4X0URqmaSp+Sq1Ul71MH8+nvOWv5PP5IFhxLT11Ja9doS135Sk1t5X6imN96FV7l/n+tkLvV9TqKr/psDKkR0+ePGooGeMffvjhu3JGnEH+N8OubG3uZn7Dxlov4qILJB09G7SOc1KruNU+u7YO114Ku++foHXlEdzZdBhBkRpZKJY1EgKGDQUDenXUzQ1FE5dc+/2HLXh5LU5b/p7aeOetTIrCZOedZEiZTOfNsQbVxsXp8RrdSG91CTszFrzlxQ/Ooy+sIK6JosAuTucaY/zIeK3G/gNR6gyHAHicY2BkYGAA4sXzJCXi+W2+MnAzvwCKMFxdXMIFo////b+EJZ65BcjlYGACiQIAToQMiQB4nGNgZGBgbvk/h4GBpez/3/+/WOIZgCIogA8ArKoHBXicY37BwMCiz8DAvACII6HsFyD2/78gmukUlA2TLwOp+f8fAEEpDU0AAAAAASIBcgHcA4ADuAQ+BH4EvgjCCWgJ+Aq4CxoAAAABAAAADgH4AA8AAAAAAAIAQABQAHMAAACtC3AAAAAAeJx1kN1qwjAYht/Mn20K29hgp8vRUMbqDwxBEASHnmwnMjwdtda2UhtJo+Bt7B52MbuJXcte2ziGspY0z/fky5evAXCNbwjkzxNHzgJnjHI+wSl6lgv0z5aL5BfLJVTxZrlM/265ggcElqu4wQcriOI5owU+LQtciUvLJ7gQd5YL9I+Wi+Se5RJuxavlMr1nuYKJSC1XcS++Bmq11VEQGlkb1GW72erI6VYqqihxY+muTah0KvtyrhLjx7FyPLXc89gP1rGr9+F+nvg6jVQiW05zr0Z+4mvX+LNd9XQTtI2Zy7lWSzm0GXKl1cL3jBMas+o2Gn/PwwAKK2yhEfGqQhhI1GjrnNtoooUOacoMycw8K0ICFzGNizV3hNlKyrjPMWeU0PrMiMkOPH6XR35MCrg/ZhV9tHoYT0i7M6LMS/blsLvDrBEpyTLdzM5+e0+x4WltWsNduy511pXE8KCG5H3s1hY0Hr2T3Yqh7aLB95//+wHmboRRAHicbcHREoIgEAVQriGglX0j6KoMxjrrOk5/30OvnWMa89Ob/wY0uMGihYNHQIcedzzwxICXCYU+iaNMbUx8qhc6lIW6keucl1Oo4WJX2nY3cY1KNsWx+Ep6sRS3ZF3P5HeSIx9qrzznoCTvXONmzBdEIiFQeJxj8N7BcCIoYiMjY1/kBsadHAwcDMkFGxlYnTYxMDJogRibuZgYOSAsPgYwi81pF9MBoDQnkM3utIvBAcJmZnDZqMLYERixwaEjYiNzistGNRBvF0cDAyOLQ0dySARISSQQbOZhYuTR2sH4v3UDS+9GJgYXAAx2I/QAAA==") format("woff"), url("data:application/octet-stream;base64,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JzYmJzMyNTYnJgM2NyYiLwE2Ji8BJi8BJg8BIg8BFSYnIi4BDgEPASY2JgYPAQY2BhUOARUuATceARcWBwYHBhcUBhYBrXTGcnLG6MhuBnq8ARMCCAMBAgQDERUTCgEMAggGAwEHBgQECgUGBAEIAQIBAwMEBAQEBgEGAggJBQQGAgQDAQgMAQUcBAMCAgEIAQ4BAgcJAwQEAQQCAwEHCgIEBQ0DAxQOEwQIBgECAQIFCQIBEwkGBAIFBgoDCAQHBQIDBgkEBgEFCQQFAwMCBQQBDgcLDwQQAwMBCAQIAQgDAQgEAwICAwQCBBIFAwwMAQMDAgwZGwMGBQUTBQMLBA0LAQQCBgQIBAkEUTIEBQIGBQMBGAoBAgcFBAMEBAQBAgEBAQIKBwcSBAcJBAMIBAIOAQECAg4CBAICDwgDBAMCAwUBBAoKAQQIBAUMBwIDCAMJBxYGBgUICBAEFAoBAgQCBgMOAwQBCgUIEQoCAgICAQUCBAEKAgMMAwIIAQIIAwEDAgcLBAECAggUAwgKAQIBBAIDBQIBAwIBAwEEGAMJAwEBAQMNAg4EAgMBBAMFAgYIBAICAQgEBAcIBQcMBAQCAgIGAQUEAwIDBQwEAhIBBAICBQ4JAgIKCAUJAgYGBwUJDAppc1ABDAENAQQDFQEDBQIDAgIBBQwIAwYGBgYBAQQIBAoBBwYCCgIEAQwBAQICBAsPAQIJCgEDPXTE6sR0dMTqxHT+3QEIAgYGAQQIAwULAQwBAwICDAEKBwIDBAIEAQIGDAUGAwMCBAEBAwMEAgQBAwMCAggEAgYEAQMEAQQEBgcDCAcKBwQFBgUMAwECBAIBAwwJDgMEBQcIBQMRAgMOCAUMAwEDCQkGBAMGAQ4ECgQBAgUCAgYKBAcHBwEJBQgHCAMCBwMCBAIGAgQFCgMDDgIFAgIFBAcCAQoIDwIDAwcDAg4DAgMEBgQGBAQBAS1PBAEIBAMEBg8KAgYEBQQFDgkUCwIBBhoCARcFBAYDBRQDAxAFAgEECAUIBAELGA0FDAICBAQMCA4EDgEKCxQHCAEFAw0CAQIBEgMKBAQJBQYCAwoDAgMFDAIQCBIDAwQEBgIECgcOAQUCBAEEAgIQBQ8FAgUDAgsCCAQEAgIEGA4JDgUJAQQGAQIDAgEEAwYHBgUCDwoBBAECAwECAwgFFwQCCAgDBQ4CCgoFAQID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") format("truetype"); }
 [class^="icn-"]::before, [class*=" icn-"]::before {
   font-family: "fontello";
   font-style: normal;
@@ -341,6 +341,9 @@ th {
 
 /* Fontello icon codes */
 /* Fontello classes */
+.icn-keyboard::before {
+  content: '\2328'; }
+
 .icn-about::before {
   content: '\2605'; }
 
@@ -1087,11 +1090,14 @@ form span.required {
   .AP-preview .wrap .x-passwd {
     font-family: monospace; }
 
-body.term h1 {
-  font-size: 1.80203em; }
-  @media screen and (max-width: 544px) {
-    body.term h1 {
-      font-size: 1.42383em; } }
+body.term #content {
+  padding-left: 0;
+  padding-right: 0; }
+  body.term #content h1 {
+    font-size: 1.80203em; }
+    @media screen and (max-width: 544px) {
+      body.term #content h1 {
+        font-size: 1.42383em; } }
 body.term #screen {
   -webkit-user-select: none;
   -moz-user-select: none;
@@ -1118,7 +1124,7 @@ body.term #buttons {
   body.term #buttons button {
     margin: 0 3px;
     padding: 8px 5px;
-    min-width: 65px;
+    min-width: 62px;
     cursor: pointer;
     font-weight: bold; }
 body.term #botnav {
@@ -1128,13 +1134,436 @@ body.term #botnav {
     padding: 0 0.38198rem;
     text-decoration: underline; }
     body.term #botnav a, body.term #botnav a:visited, body.term #botnav a:link {
-      color: #2e4d6e; }
+      color: #336085; }
     body.term #botnav a:hover {
       color: #5abfff; }
+  body.term #botnav .icn-keyboard {
+    text-decoration: none;
+    font-size: 150%;
+    vertical-align: middle; }
 
 #termwrap {
   text-align: center; }
 
+#softkb-input {
+  position: absolute;
+  top: -9999px; }
+
+.nb {
+  font-weight: normal !important; }
+
+.theme-0 .fg0 {
+  color: #111213; }
+.theme-0 .bg0 {
+  background-color: #111213; }
+.theme-0 .fg1 {
+  color: #CC0000; }
+.theme-0 .bg1 {
+  background-color: #CC0000; }
+.theme-0 .fg2 {
+  color: #4E9A06; }
+.theme-0 .bg2 {
+  background-color: #4E9A06; }
+.theme-0 .fg3 {
+  color: #C4A000; }
+.theme-0 .bg3 {
+  background-color: #C4A000; }
+.theme-0 .fg4 {
+  color: #3465A4; }
+.theme-0 .bg4 {
+  background-color: #3465A4; }
+.theme-0 .fg5 {
+  color: #75507B; }
+.theme-0 .bg5 {
+  background-color: #75507B; }
+.theme-0 .fg6 {
+  color: #06989A; }
+.theme-0 .bg6 {
+  background-color: #06989A; }
+.theme-0 .fg7 {
+  color: #D3D7CF; }
+.theme-0 .bg7 {
+  background-color: #D3D7CF; }
+.theme-0 .fg8 {
+  color: #555753; }
+.theme-0 .bg8 {
+  background-color: #555753; }
+.theme-0 .fg9 {
+  color: #EF2929; }
+.theme-0 .bg9 {
+  background-color: #EF2929; }
+.theme-0 .fg10 {
+  color: #8AE234; }
+.theme-0 .bg10 {
+  background-color: #8AE234; }
+.theme-0 .fg11 {
+  color: #FCE94F; }
+.theme-0 .bg11 {
+  background-color: #FCE94F; }
+.theme-0 .fg12 {
+  color: #729FCF; }
+.theme-0 .bg12 {
+  background-color: #729FCF; }
+.theme-0 .fg13 {
+  color: #AD7FA8; }
+.theme-0 .bg13 {
+  background-color: #AD7FA8; }
+.theme-0 .fg14 {
+  color: #34E2E2; }
+.theme-0 .bg14 {
+  background-color: #34E2E2; }
+.theme-0 .fg15 {
+  color: #EEEEEC; }
+.theme-0 .bg15 {
+  background-color: #EEEEEC; }
+
+.theme-1 .fg0 {
+  color: #000000; }
+.theme-1 .bg0 {
+  background-color: #000000; }
+.theme-1 .fg1 {
+  color: #aa0000; }
+.theme-1 .bg1 {
+  background-color: #aa0000; }
+.theme-1 .fg2 {
+  color: #00aa00; }
+.theme-1 .bg2 {
+  background-color: #00aa00; }
+.theme-1 .fg3 {
+  color: #aa5500; }
+.theme-1 .bg3 {
+  background-color: #aa5500; }
+.theme-1 .fg4 {
+  color: #0000aa; }
+.theme-1 .bg4 {
+  background-color: #0000aa; }
+.theme-1 .fg5 {
+  color: #aa00aa; }
+.theme-1 .bg5 {
+  background-color: #aa00aa; }
+.theme-1 .fg6 {
+  color: #00aaaa; }
+.theme-1 .bg6 {
+  background-color: #00aaaa; }
+.theme-1 .fg7 {
+  color: #aaaaaa; }
+.theme-1 .bg7 {
+  background-color: #aaaaaa; }
+.theme-1 .fg8 {
+  color: #555555; }
+.theme-1 .bg8 {
+  background-color: #555555; }
+.theme-1 .fg9 {
+  color: #ff5555; }
+.theme-1 .bg9 {
+  background-color: #ff5555; }
+.theme-1 .fg10 {
+  color: #55ff55; }
+.theme-1 .bg10 {
+  background-color: #55ff55; }
+.theme-1 .fg11 {
+  color: #ffff55; }
+.theme-1 .bg11 {
+  background-color: #ffff55; }
+.theme-1 .fg12 {
+  color: #5555ff; }
+.theme-1 .bg12 {
+  background-color: #5555ff; }
+.theme-1 .fg13 {
+  color: #ff55ff; }
+.theme-1 .bg13 {
+  background-color: #ff55ff; }
+.theme-1 .fg14 {
+  color: #55ffff; }
+.theme-1 .bg14 {
+  background-color: #55ffff; }
+.theme-1 .fg15 {
+  color: #ffffff; }
+.theme-1 .bg15 {
+  background-color: #ffffff; }
+
+.theme-2 .fg0 {
+  color: #000000; }
+.theme-2 .bg0 {
+  background-color: #000000; }
+.theme-2 .fg1 {
+  color: #cd0000; }
+.theme-2 .bg1 {
+  background-color: #cd0000; }
+.theme-2 .fg2 {
+  color: #00cd00; }
+.theme-2 .bg2 {
+  background-color: #00cd00; }
+.theme-2 .fg3 {
+  color: #cdcd00; }
+.theme-2 .bg3 {
+  background-color: #cdcd00; }
+.theme-2 .fg4 {
+  color: #0000ee; }
+.theme-2 .bg4 {
+  background-color: #0000ee; }
+.theme-2 .fg5 {
+  color: #cd00cd; }
+.theme-2 .bg5 {
+  background-color: #cd00cd; }
+.theme-2 .fg6 {
+  color: #00cdcd; }
+.theme-2 .bg6 {
+  background-color: #00cdcd; }
+.theme-2 .fg7 {
+  color: #e5e5e5; }
+.theme-2 .bg7 {
+  background-color: #e5e5e5; }
+.theme-2 .fg8 {
+  color: #7f7f7f; }
+.theme-2 .bg8 {
+  background-color: #7f7f7f; }
+.theme-2 .fg9 {
+  color: #ff0000; }
+.theme-2 .bg9 {
+  background-color: #ff0000; }
+.theme-2 .fg10 {
+  color: #00ff00; }
+.theme-2 .bg10 {
+  background-color: #00ff00; }
+.theme-2 .fg11 {
+  color: #ffff00; }
+.theme-2 .bg11 {
+  background-color: #ffff00; }
+.theme-2 .fg12 {
+  color: #5c5cff; }
+.theme-2 .bg12 {
+  background-color: #5c5cff; }
+.theme-2 .fg13 {
+  color: #ff00ff; }
+.theme-2 .bg13 {
+  background-color: #ff00ff; }
+.theme-2 .fg14 {
+  color: #00ffff; }
+.theme-2 .bg14 {
+  background-color: #00ffff; }
+.theme-2 .fg15 {
+  color: #ffffff; }
+.theme-2 .bg15 {
+  background-color: #ffffff; }
+
+.theme-3 .fg0 {
+  color: #000000; }
+.theme-3 .bg0 {
+  background-color: #000000; }
+.theme-3 .fg1 {
+  color: #cd0000; }
+.theme-3 .bg1 {
+  background-color: #cd0000; }
+.theme-3 .fg2 {
+  color: #00cd00; }
+.theme-3 .bg2 {
+  background-color: #00cd00; }
+.theme-3 .fg3 {
+  color: #cdcd00; }
+.theme-3 .bg3 {
+  background-color: #cdcd00; }
+.theme-3 .fg4 {
+  color: #0000cd; }
+.theme-3 .bg4 {
+  background-color: #0000cd; }
+.theme-3 .fg5 {
+  color: #cd00cd; }
+.theme-3 .bg5 {
+  background-color: #cd00cd; }
+.theme-3 .fg6 {
+  color: #00cdcd; }
+.theme-3 .bg6 {
+  background-color: #00cdcd; }
+.theme-3 .fg7 {
+  color: #faebd7; }
+.theme-3 .bg7 {
+  background-color: #faebd7; }
+.theme-3 .fg8 {
+  color: #404040; }
+.theme-3 .bg8 {
+  background-color: #404040; }
+.theme-3 .fg9 {
+  color: #ff0000; }
+.theme-3 .bg9 {
+  background-color: #ff0000; }
+.theme-3 .fg10 {
+  color: #00ff00; }
+.theme-3 .bg10 {
+  background-color: #00ff00; }
+.theme-3 .fg11 {
+  color: #ffff00; }
+.theme-3 .bg11 {
+  background-color: #ffff00; }
+.theme-3 .fg12 {
+  color: #0000ff; }
+.theme-3 .bg12 {
+  background-color: #0000ff; }
+.theme-3 .fg13 {
+  color: #ff00ff; }
+.theme-3 .bg13 {
+  background-color: #ff00ff; }
+.theme-3 .fg14 {
+  color: #00ffff; }
+.theme-3 .bg14 {
+  background-color: #00ffff; }
+.theme-3 .fg15 {
+  color: #ffffff; }
+.theme-3 .bg15 {
+  background-color: #ffffff; }
+
+.theme-4 .fg0 {
+  color: #2e3436; }
+.theme-4 .bg0 {
+  background-color: #2e3436; }
+.theme-4 .fg1 {
+  color: #cc0000; }
+.theme-4 .bg1 {
+  background-color: #cc0000; }
+.theme-4 .fg2 {
+  color: #4e9a06; }
+.theme-4 .bg2 {
+  background-color: #4e9a06; }
+.theme-4 .fg3 {
+  color: #c4a000; }
+.theme-4 .bg3 {
+  background-color: #c4a000; }
+.theme-4 .fg4 {
+  color: #3465a4; }
+.theme-4 .bg4 {
+  background-color: #3465a4; }
+.theme-4 .fg5 {
+  color: #75507b; }
+.theme-4 .bg5 {
+  background-color: #75507b; }
+.theme-4 .fg6 {
+  color: #06989a; }
+.theme-4 .bg6 {
+  background-color: #06989a; }
+.theme-4 .fg7 {
+  color: #d3d7cf; }
+.theme-4 .bg7 {
+  background-color: #d3d7cf; }
+.theme-4 .fg8 {
+  color: #555753; }
+.theme-4 .bg8 {
+  background-color: #555753; }
+.theme-4 .fg9 {
+  color: #ef2929; }
+.theme-4 .bg9 {
+  background-color: #ef2929; }
+.theme-4 .fg10 {
+  color: #8ae234; }
+.theme-4 .bg10 {
+  background-color: #8ae234; }
+.theme-4 .fg11 {
+  color: #fce94f; }
+.theme-4 .bg11 {
+  background-color: #fce94f; }
+.theme-4 .fg12 {
+  color: #729fcf; }
+.theme-4 .bg12 {
+  background-color: #729fcf; }
+.theme-4 .fg13 {
+  color: #ad7fa8; }
+.theme-4 .bg13 {
+  background-color: #ad7fa8; }
+.theme-4 .fg14 {
+  color: #34e2e2; }
+.theme-4 .bg14 {
+  background-color: #34e2e2; }
+.theme-4 .fg15 {
+  color: #eeeeec; }
+.theme-4 .bg15 {
+  background-color: #eeeeec; }
+
+.theme-5 .fg0 {
+  color: #073642; }
+.theme-5 .bg0 {
+  background-color: #073642; }
+.theme-5 .fg1 {
+  color: #dc322f; }
+.theme-5 .bg1 {
+  background-color: #dc322f; }
+.theme-5 .fg2 {
+  color: #859900; }
+.theme-5 .bg2 {
+  background-color: #859900; }
+.theme-5 .fg3 {
+  color: #b58900; }
+.theme-5 .bg3 {
+  background-color: #b58900; }
+.theme-5 .fg4 {
+  color: #268bd2; }
+.theme-5 .bg4 {
+  background-color: #268bd2; }
+.theme-5 .fg5 {
+  color: #d33682; }
+.theme-5 .bg5 {
+  background-color: #d33682; }
+.theme-5 .fg6 {
+  color: #2aa198; }
+.theme-5 .bg6 {
+  background-color: #2aa198; }
+.theme-5 .fg7 {
+  color: #eee8d5; }
+.theme-5 .bg7 {
+  background-color: #eee8d5; }
+.theme-5 .fg8 {
+  color: #002b36; }
+.theme-5 .bg8 {
+  background-color: #002b36; }
+.theme-5 .fg9 {
+  color: #cb4b16; }
+.theme-5 .bg9 {
+  background-color: #cb4b16; }
+.theme-5 .fg10 {
+  color: #586e75; }
+.theme-5 .bg10 {
+  background-color: #586e75; }
+.theme-5 .fg11 {
+  color: #657b83; }
+.theme-5 .bg11 {
+  background-color: #657b83; }
+.theme-5 .fg12 {
+  color: #839496; }
+.theme-5 .bg12 {
+  background-color: #839496; }
+.theme-5 .fg13 {
+  color: #6c71c4; }
+.theme-5 .bg13 {
+  background-color: #6c71c4; }
+.theme-5 .fg14 {
+  color: #93a1a1; }
+.theme-5 .bg14 {
+  background-color: #93a1a1; }
+.theme-5 .fg15 {
+  color: #fdf6e3; }
+.theme-5 .bg15 {
+  background-color: #fdf6e3; }
+
+.bold {
+  font-weight: bold !important; }
+
+.Row.color-preview {
+  font-family: monospace;
+  font-size: 16pt;
+  display: block;
+  margin-bottom: 0;
+  padding-left: 160px; }
+  @media screen and (max-width: 544px) {
+    .Row.color-preview {
+      padding-left: 0;
+      font-size: 14pt; } }
+  .Row.color-preview .colorprev {
+    display: block;
+    margin: 0;
+    cursor: pointer; }
+
+#color-example {
+  display: inline-block;
+  padding: 5px; }
+
 .page-about .Box {
   padding-left: 1rem;
   padding-right: 1rem; }
@@ -1173,108 +1602,6 @@ body.term #botnav {
   .ansiref.w100 td:nth-child(2) {
     width: 8em; }
 
-.fg0 {
-  color: #111213; }
-
-.bg0 {
-  background-color: #111213; }
-
-.fg1 {
-  color: #CC0000; }
-
-.bg1 {
-  background-color: #CC0000; }
-
-.fg2 {
-  color: #4E9A06; }
-
-.bg2 {
-  background-color: #4E9A06; }
-
-.fg3 {
-  color: #C4A000; }
-
-.bg3 {
-  background-color: #C4A000; }
-
-.fg4 {
-  color: #3465A4; }
-
-.bg4 {
-  background-color: #3465A4; }
-
-.fg5 {
-  color: #75507B; }
-
-.bg5 {
-  background-color: #75507B; }
-
-.fg6 {
-  color: #06989A; }
-
-.bg6 {
-  background-color: #06989A; }
-
-.fg7 {
-  color: #D3D7CF; }
-
-.bg7 {
-  background-color: #D3D7CF; }
-
-.fg8 {
-  color: #555753; }
-
-.bg8 {
-  background-color: #555753; }
-
-.fg9 {
-  color: #EF2929; }
-
-.bg9 {
-  background-color: #EF2929; }
-
-.fg10 {
-  color: #8AE234; }
-
-.bg10 {
-  background-color: #8AE234; }
-
-.fg11 {
-  color: #FCE94F; }
-
-.bg11 {
-  background-color: #FCE94F; }
-
-.fg12 {
-  color: #729FCF; }
-
-.bg12 {
-  background-color: #729FCF; }
-
-.fg13 {
-  color: #AD7FA8; }
-
-.bg13 {
-  background-color: #AD7FA8; }
-
-.fg14 {
-  color: #34E2E2; }
-
-.bg14 {
-  background-color: #34E2E2; }
-
-.fg15 {
-  color: #EEEEEC; }
-
-.bg15 {
-  background-color: #EEEEEC; }
-
-.fg8, .fg9, .fg10, .fg11, .fg12, .fg13, .fg14, .fg15 {
-  font-weight: bold; }
-
-.nb {
-  font-weight: normal !important; }
-
 @media screen and (min-width: 545px) {
   .mq-phone {
     display: none !important; } }
diff --git a/html_orig/fontello/fontello.zip b/html_orig/fontello/fontello.zip
index a9d757f..0af4bda 100644
Binary files a/html_orig/fontello/fontello.zip and b/html_orig/fontello/fontello.zip differ
diff --git a/html_orig/js/app.js b/html_orig/js/app.js
index 0465e07..1a1f39d 100644
--- a/html_orig/js/app.js
+++ b/html_orig/js/app.js
@@ -1182,306 +1182,337 @@ function tr(key) { return _tr[key] || '?'+key+'?'; }
 	w.init = wifiInit;
 	w.startScanning = startScanning;
 })(window.WiFi = {});
-(function() {
-	/**
-	 * Terminal module
-	 */
-	var Term = (function () {
-		var W, H;
-		var cursor = {a: false, x: 0, y: 0, suppress: false, hidden: false};
-		var screen = [];
-		var blinkIval;
-
-/*
-		/!** Clear screen *!/
-		function cls() {
-			screen.forEach(function(cell, i) {
-				cell.t = ' ';
-				cell.fg = 7;
-				cell.bg = 0;
-				blit(cell);
-			});
-		}
-*/
+var Screen = (function () {
+	var W, H; // dimensions
+	var inited = false;
+
+	var cursor = {
+		a: false,        // active (blink state)
+		x: 0,            // 0-based coordinates
+		y: 0,
+		fg: 7,           // colors 0-15
+		bg: 0,
+		bold: false,
+		suppress: false, // do not turn on in blink interval (for safe moving)
+		hidden: false    // do not show
+	};
 
-		/** Set text and color at XY */
-		function cellAt(y, x) {
-			return screen[y*W+x];
+	var screen = [];
+	var blinkIval;
+
+	/** Clear screen */
+	function _clear() {
+		for (var i = W*H-1; i>=0; i--) {
+			var cell = screen[i];
+			cell.t = ' ';
+			cell.bg = cursor.bg;
+			cell.fg = cursor.fg;
+			cell.bold = false;
+			_draw(cell);
 		}
+	}
 
-		/** Get cell under cursor */
-		function cursorCell() {
-			return cellAt(cursor.y, cursor.x);
-		}
+	/** Set text and color at XY */
+	function _cellAt(y, x) {
+		return screen[y*W+x];
+	}
 
-/*
-		/!** Enable or disable cursor visibility *!/
-		function cursorEnable(enable) {
-			cursor.hidden = !enable;
-			cursor.a &= enable;
-			blit(cursorCell(), cursor.a);
-		}
+	/** Get cell under cursor */
+	function _curCell() {
+		return screen[cursor.y*W + cursor.x];
+	}
 
-		/!** Safely move cursor *!/
-		function cursorSet(y, x) {
-			// Hide and prevent from showing up during the move
-			cursor.suppress = true;
-			blit(cursorCell(), false);
+	/** Enable or disable cursor visibility */
+	function _cursorEnable(enable) {
+		cursor.hidden = !enable;
+		cursor.a &= enable;
+		_draw(_curCell());
+	}
 
-			cursor.x = x;
-			cursor.y = y;
+	/** Safely move cursor */
+	function cursorSet(y, x) {
+		// Hide and prevent from showing up during the move
+		cursor.suppress = true;
+		_draw(_curCell(), false);
+		cursor.x = x;
+		cursor.y = y;
+		// Show again
+		cursor.suppress = false;
+		_draw(_curCell());
+	}
 
-			// Show again
-			cursor.suppress = false;
-			blit(cursorCell(), cursor.a);
-		}
-*/
-
-		/** Update cell on display. inv = invert (for cursor) */
-		function blit(cell, inv) {
-			var e = cell.e, fg, bg;
-			// Colors
-			fg = inv ? cell.bg : cell.fg;
-			bg = inv ? cell.fg : cell.bg;
-			// Update
-			e.innerText = (cell.t+' ')[0];
-			e.className = 'fg'+fg+' bg'+bg;
+	/** Update cell on display. inv = invert (for cursor) */
+	function _draw(cell, inv) {
+		if (typeof inv == 'undefined') {
+			inv = cursor.a && cursor.x == cell.x && cursor.y == cell.y;
 		}
 
-		/** Show entire screen */
-		function blitAll() {
-			screen.forEach(function(cell, i) {
-				/* Invert if under cursor & cursor active */
-				var inv = cursor.a && (i == cursor.y*W+cursor.x);
-				blit(cell, inv);
-			});
-		}
+		var e = cell.e, fg, bg;
+		// Colors
+		fg = inv ? cell.bg : cell.fg;
+		bg = inv ? cell.fg : cell.bg;
+		// Update
+		e.innerText = (cell.t + ' ')[0];
+		e.className = 'fg' + fg + ' bg' + bg + (cell.bold ? ' bold' : '');
+	}
 
-		/** Load screen content from a 'binary' sequence */
-		function load(obj) {
-			cursor.x = obj.x;
-			cursor.y = obj.y;
-			cursor.hidden = !obj.cv;
+	/** Show entire screen */
+	function _drawAll() {
+		for (var i = W*H-1; i>=0; i--) {
+			_draw(screen[i]);
+		}
+	}
 
-			// full re-init if size changed
-			if (obj.w != W || obj.h != H) {
-				Term.init(obj);
-				return;
-			}
+	function _rebuild(rows, cols) {
+		W = cols;
+		H = rows;
 
-			// Simple compression - hexFG hexBG 'ASCII' (r/s/t/u NUM{1,2,3,4})?
-			// comma instead of both colors = same as before
+		/* Build screen & show */
+		var e, cell, scr = qs('#screen');
 
-			var i = 0, ci = 0, str = obj.screen;
-			var fg = 7, bg = 0;
-			while(i < str.length && ci<W*H) {
-				var cell = screen[ci++];
+		// Empty the screen node
+		while (scr.firstChild) scr.removeChild(scr.firstChild);
 
-				var j = str[i];
-				if (j != ',') { // comma = repeat last colors
-					fg = cell.fg = parseInt(str[i++], 16);
-					bg = cell.bg = parseInt(str[i++], 16);
-				} else {
-					i++;
-					cell.fg = fg;
-					cell.bg = bg;
-				}
+		screen = [];
 
-				var t = cell.t = str[i++];
+		for(var i = 0; i < W*H; i++) {
+			e = mk('span');
 
-				var repchars = 0;
-				switch(str[i]) {
-					case 'r': repchars = 1; break;
-					case 's': repchars = 2; break;
-					case 't': repchars = 3; break;
-					case 'u': repchars = 4; break;
-					default: repchars = 0;
-				}
+			(function() {
+				var x = i % W;
+				var y = Math.floor(i / W);
+				e.addEventListener('click', function () {
+					Input.onTap(y, x);
+				});
+			})();
 
-				if (repchars > 0) {
-					var rep = parseInt(str.substr(i+1,repchars));
-					i = i + repchars + 1;
-					for (; rep>0 && ci<W*H; rep--) {
-						cell = screen[ci++];
-						cell.fg = fg;
-						cell.bg = bg;
-						cell.t = t;
-					}
-				}
+			/* End of line */
+			if ((i > 0) && (i % W == 0)) {
+				scr.appendChild(mk('br'));
 			}
-
-			blitAll();
+			/* The cell */
+			scr.appendChild(e);
+
+			cell = {
+				t: ' ',
+				fg: cursor.fg,
+				bg: cursor.bg,
+				e: e,
+				x: i % W,
+				y: Math.floor(i / W),
+			};
+			screen.push(cell);
+			_draw(cell);
 		}
+	}
 
-		/** Init the terminal */
-		function init(obj) {
-			W = obj.w;
-			H = obj.h;
+	/** Init the terminal */
+	function _init() {
+		/* Cursor blinking */
+		clearInterval(blinkIval);
+		blinkIval = setInterval(function () {
+			cursor.a = !cursor.a;
+			if (cursor.hidden) {
+				cursor.a = false;
+			}
 
-			/* Build screen & show */
-			var e, cell, scr = qs('#screen');
+			if (!cursor.suppress) {
+				_draw(_curCell(), cursor.a);
+			}
+		}, 500);
+		inited = true;
+	}
 
-			// Empty the screen node
-			while (scr.firstChild) scr.removeChild(scr.firstChild);
+	/** Decode two-byte number */
+	function parse2B(s, i) {
+		return (s.charCodeAt(i++) - 1) + (s.charCodeAt(i) - 1) * 127;
+	}
 
-			screen = [];
+	var SEQ_SET_COLOR = 1;
+	var SEQ_REPEAT = 2;
 
-			for(var i = 0; i < W*H; i++) {
-				e = mk('span');
+	/** Load screen content from a binary sequence (new) */
+	function load(str) {
+		var i = 0, ci = 0, j, jc, num, num2, t = ' ', fg, bg, bold, cell;
 
-				(function() {
-					var x = i % W;
-					var y = Math.floor(i / W);
-					e.addEventListener('click', function () {
-						Input.onTap(y, x);
-					});
-				})();
+		if (!inited) _init();
 
-				/* End of line */
-				if ((i > 0) && (i % W == 0)) {
-					scr.appendChild(mk('br'));
+		// Set size
+		num = parse2B(str, i); i += 2;
+		num2 = parse2B(str, i); i += 2;
+		if (num != H || num2 != W) {
+			_rebuild(num, num2);
+		}
+		console.log("Size ",num, num2);
+
+		// Cursor position
+		num = parse2B(str, i); i += 2;
+		num2 = parse2B(str, i); i += 2;
+		cursorSet(num, num2);
+		console.log("Cursor at ",num, num2);
+
+		// Attributes
+		num = parse2B(str, i); i += 2;
+		cursor.fg = num & 0x0F;
+		cursor.bg = (num & 0xF0) >> 4;
+		cursor.bold = !!(num & 0x100);
+		cursor.hidden = !(num & 0x200);
+		console.log("FG ",cursor.fg, ", BG ", cursor.bg,", BOLD ", cursor.bold, ", HIDE ", cursor.hidden);
+
+		fg = cursor.fg;
+		bg = cursor.bg;
+		bold = cursor.bold;
+
+		// Here come the content
+		while(i < str.length && ci<W*H) {
+
+			j = str[i++];
+			jc = j.charCodeAt(0);
+			if (jc == SEQ_SET_COLOR) {
+				num = parse2B(str, i); i += 2;
+				fg = num & 0x0F;
+				bg = (num & 0xF0) >> 4;
+				bold = !!(num & 0x100);
+				console.log("Switch to ",fg,bg,bold);
+			}
+			else if (jc == SEQ_REPEAT) {
+				num = parse2B(str, i); i += 2;
+				console.log("Repeat x ",num);
+				for (; num>0 && ci<W*H; num--) {
+					cell = screen[ci++];
+					cell.fg = fg;
+					cell.bg = bg;
+					cell.t = t;
+					cell.bold = bold;
 				}
-				/* The cell */
-				scr.appendChild(e);
-
-				cell = {t: ' ', fg: 7, bg: 0, e: e};
-				screen.push(cell);
-				blit(cell);
 			}
+			else {
+				cell = screen[ci++];
+				// Unique cell character
+				t = cell.t = j;
+				cell.fg = fg;
+				cell.bg = bg;
+				cell.bold = bold;
+				console.log("Symbol ", j);
+			}
+		}
 
-			/* Cursor blinking */
-			clearInterval(blinkIval);
-			blinkIval = setInterval(function() {
-				cursor.a = !cursor.a;
-				if (cursor.hidden) {
-					cursor.a = false;
-				}
+		_drawAll();
+	}
 
-				if (!cursor.suppress) {
-					blit(cursorCell(), cursor.a);
-				}
-			}, 500);
+	return  {
+		load: load, // full load (string)
+	};
+})();
 
-			load(obj);
-		}
+/** Handle connections */
+var Conn = (function() {
+	var ws;
 
-		// publish
-		return {
-			init: init,
-			load: load
-		};
-	})();
+	function onOpen(evt) {
+		console.log("CONNECTED");
+	}
 
-	/** Handle connections */
-	var Conn = (function() {
-		var ws;
+	function onClose(evt) {
+		console.warn("SOCKET CLOSED, code "+evt.code+". Reconnecting...");
+		setTimeout(function() {
+			init();
+		}, 1000);
+	}
 
-		function onOpen(evt) {
-			console.log("CONNECTED");
+	function onMessage(evt) {
+		try {
+			console.log("RX: ", evt.data);
+			// Assume all our messages are screen updates
+			Screen.load(evt.data);
+		} catch(e) {
+			console.error(e);
 		}
+	}
 
-		function onClose(evt) {
-			console.warn("SOCKET CLOSED, code "+evt.code+". Reconnecting...");
-			setTimeout(function() {
-				init();
-			}, 1000);
+	function doSend(message) {
+		console.log("TX: ", message);
+		if (!ws) return; // for dry testing
+		if (ws.readyState != 1) {
+			console.error("Socket not ready");
+			return;
 		}
-
-		function onMessage(evt) {
-			try {
-				console.log("RX: ", evt.data);
-				// Assume all our messages are screen updates
-				Term.load(JSON.parse(evt.data));
-			} catch(e) {
-				console.error(e);
-			}
+		if (typeof message != "string") {
+			message = JSON.stringify(message);
 		}
+		ws.send(message);
+	}
 
-		function doSend(message) {
-			console.log("TX: ", message);
-			if (ws.readyState != 1) {
-				console.error("Socket not ready");
-				return;
-			}
-			if (typeof message != "string") {
-				message = JSON.stringify(message);
-			}
-			ws.send(message);
-		}
+	function init() {
+		ws = new WebSocket("ws://"+_root+"/ws/update.cgi");
+		ws.onopen = onOpen;
+		ws.onclose = onClose;
+		ws.onmessage = onMessage;
 
-		function init() {
-			ws = new WebSocket("ws://"+_root+"/ws/update.cgi");
-			ws.onopen = onOpen;
-			ws.onclose = onClose;
-			ws.onmessage = onMessage;
+		console.log("Opening socket.");
+	}
 
-			console.log("Opening socket.");
-		}
+	return {
+		ws: null,
+		init: init,
+		send: doSend
+	};
+})();
 
-		return {
-			ws: null,
-			init: init,
-			send: doSend
-		};
-	})();
-
-	//
-	// Keyboard (& mouse) input
-	//
-	var Input = (function() {
-		function sendStrMsg(str) {
-			Conn.send("STR:"+str);
-		}
+/** User input */
+var Input = (function() {
+	function sendStrMsg(str) {
+		Conn.send("STR:"+str);
+	}
 
-		function sendPosMsg(y, x) {
-			Conn.send("TAP:"+y+','+x);
-		}
+	function sendPosMsg(y, x) {
+		Conn.send("TAP:"+y+','+x);
+	}
 
-		function sendBtnMsg(n) {
-			Conn.send("BTN:"+n);
-		}
+	function sendBtnMsg(n) {
+		Conn.send("BTN:"+n);
+	}
 
-		function init() {
-			window.addEventListener('keypress', function(e) {
-				var code = +e.which;
-				if (code >= 32 && code < 127) {
-					var ch = String.fromCharCode(code);
-					//console.log("Typed ", ch, "code", code, e);
-					sendStrMsg(ch);
-				}
-			});
+	function init() {
+		window.addEventListener('keypress', function(e) {
+			var code = +e.which;
+			if (code >= 32 && code < 127) {
+				var ch = String.fromCharCode(code);
+				//console.log("Typed ", ch, "code", code, e);
+				sendStrMsg(ch);
+			}
+		});
 
-			window.addEventListener('keydown', function(e) {
-				var code = e.keyCode;
-				//console.log("Down ", code, e);
-				switch(code) {
-					case 8: sendStrMsg('\x08'); break;
-					case 13: sendStrMsg('\x0d\x0a'); break;
-					case 27: sendStrMsg('\x1b'); break; // this allows to directly enter control sequences
-					case 37: sendStrMsg('\x1b[D'); break;
-					case 38: sendStrMsg('\x1b[A'); break;
-					case 39: sendStrMsg('\x1b[C'); break;
-					case 40: sendStrMsg('\x1b[B'); break;
-				}
-			});
+		window.addEventListener('keydown', function(e) {
+			var code = e.keyCode;
+			//console.log("Down ", code, e);
+			switch(code) {
+				case 8: sendStrMsg('\x08'); break;
+				case 10:
+				case 13: sendStrMsg('\x0d\x0a'); break;
+				case 27: sendStrMsg('\x1b'); break; // this allows to directly enter control sequences
+				case 37: sendStrMsg('\x1b[D'); break;
+				case 38: sendStrMsg('\x1b[A'); break;
+				case 39: sendStrMsg('\x1b[C'); break;
+				case 40: sendStrMsg('\x1b[B'); break;
+			}
+		});
 
-			qsa('#buttons button').forEach(function(s) {
-				s.addEventListener('click', function() {
-					sendBtnMsg(+this.dataset['n']);
-				});
+		qsa('#buttons button').forEach(function(s) {
+			s.addEventListener('click', function() {
+				sendBtnMsg(+this.dataset['n']);
 			});
-		}
-
-		return {
-			init: init,
-			onTap: sendPosMsg
-		};
-	})();
-
+		});
+	}
 
-	window.termInit = function (obj) {
-		Term.init(obj);
-		Conn.init();
-		Input.init();
+	return {
+		init: init,
+		onTap: sendPosMsg
 	};
 })();
+
+window.termInit = function (str) {
+	Screen.load(str);
+	Conn.init();
+	Input.init();
+};
diff --git a/html_orig/jssrc/term.js b/html_orig/jssrc/term.js
index 6206c85..31c3d9b 100644
--- a/html_orig/jssrc/term.js
+++ b/html_orig/jssrc/term.js
@@ -1,303 +1,334 @@
-(function() {
-	/**
-	 * Terminal module
-	 */
-	var Term = (function () {
-		var W, H;
-		var cursor = {a: false, x: 0, y: 0, suppress: false, hidden: false};
-		var screen = [];
-		var blinkIval;
-
-/*
-		/!** Clear screen *!/
-		function cls() {
-			screen.forEach(function(cell, i) {
-				cell.t = ' ';
-				cell.fg = 7;
-				cell.bg = 0;
-				blit(cell);
-			});
-		}
-*/
-
-		/** Set text and color at XY */
-		function cellAt(y, x) {
-			return screen[y*W+x];
-		}
-
-		/** Get cell under cursor */
-		function cursorCell() {
-			return cellAt(cursor.y, cursor.x);
-		}
-
-/*
-		/!** Enable or disable cursor visibility *!/
-		function cursorEnable(enable) {
-			cursor.hidden = !enable;
-			cursor.a &= enable;
-			blit(cursorCell(), cursor.a);
-		}
-
-		/!** Safely move cursor *!/
-		function cursorSet(y, x) {
-			// Hide and prevent from showing up during the move
-			cursor.suppress = true;
-			blit(cursorCell(), false);
-
-			cursor.x = x;
-			cursor.y = y;
+var Screen = (function () {
+	var W, H; // dimensions
+	var inited = false;
+
+	var cursor = {
+		a: false,        // active (blink state)
+		x: 0,            // 0-based coordinates
+		y: 0,
+		fg: 7,           // colors 0-15
+		bg: 0,
+		bold: false,
+		suppress: false, // do not turn on in blink interval (for safe moving)
+		hidden: false    // do not show
+	};
 
-			// Show again
-			cursor.suppress = false;
-			blit(cursorCell(), cursor.a);
+	var screen = [];
+	var blinkIval;
+
+	/** Clear screen */
+	function _clear() {
+		for (var i = W*H-1; i>=0; i--) {
+			var cell = screen[i];
+			cell.t = ' ';
+			cell.bg = cursor.bg;
+			cell.fg = cursor.fg;
+			cell.bold = false;
+			_draw(cell);
 		}
-*/
-
-		/** Update cell on display. inv = invert (for cursor) */
-		function blit(cell, inv) {
-			var e = cell.e, fg, bg;
-			// Colors
-			fg = inv ? cell.bg : cell.fg;
-			bg = inv ? cell.fg : cell.bg;
-			// Update
-			e.innerText = (cell.t+' ')[0];
-			e.className = 'fg'+fg+' bg'+bg;
+	}
+
+	/** Set text and color at XY */
+	function _cellAt(y, x) {
+		return screen[y*W+x];
+	}
+
+	/** Get cell under cursor */
+	function _curCell() {
+		return screen[cursor.y*W + cursor.x];
+	}
+
+	/** Enable or disable cursor visibility */
+	function _cursorEnable(enable) {
+		cursor.hidden = !enable;
+		cursor.a &= enable;
+		_draw(_curCell());
+	}
+
+	/** Safely move cursor */
+	function cursorSet(y, x) {
+		// Hide and prevent from showing up during the move
+		cursor.suppress = true;
+		_draw(_curCell(), false);
+		cursor.x = x;
+		cursor.y = y;
+		// Show again
+		cursor.suppress = false;
+		_draw(_curCell());
+	}
+
+	/** Update cell on display. inv = invert (for cursor) */
+	function _draw(cell, inv) {
+		if (typeof inv == 'undefined') {
+			inv = cursor.a && cursor.x == cell.x && cursor.y == cell.y;
 		}
 
-		/** Show entire screen */
-		function blitAll() {
-			screen.forEach(function(cell, i) {
-				/* Invert if under cursor & cursor active */
-				var inv = cursor.a && (i == cursor.y*W+cursor.x);
-				blit(cell, inv);
-			});
+		var e = cell.e, fg, bg;
+		// Colors
+		fg = inv ? cell.bg : cell.fg;
+		bg = inv ? cell.fg : cell.bg;
+		// Update
+		e.innerText = (cell.t + ' ')[0];
+		e.className = 'fg' + fg + ' bg' + bg + (cell.bold ? ' bold' : '');
+	}
+
+	/** Show entire screen */
+	function _drawAll() {
+		for (var i = W*H-1; i>=0; i--) {
+			_draw(screen[i]);
 		}
+	}
 
-		/** Load screen content from a 'binary' sequence */
-		function load(obj) {
-			cursor.x = obj.x;
-			cursor.y = obj.y;
-			cursor.hidden = !obj.cv;
+	function _rebuild(rows, cols) {
+		W = cols;
+		H = rows;
 
-			// full re-init if size changed
-			if (obj.w != W || obj.h != H) {
-				Term.init(obj);
-				return;
-			}
+		/* Build screen & show */
+		var e, cell, scr = qs('#screen');
 
-			// Simple compression - hexFG hexBG 'ASCII' (r/s/t/u NUM{1,2,3,4})?
-			// comma instead of both colors = same as before
+		// Empty the screen node
+		while (scr.firstChild) scr.removeChild(scr.firstChild);
 
-			var i = 0, ci = 0, str = obj.screen;
-			var fg = 7, bg = 0;
-			while(i < str.length && ci<W*H) {
-				var cell = screen[ci++];
+		screen = [];
 
-				var j = str[i];
-				if (j != ',') { // comma = repeat last colors
-					fg = cell.fg = parseInt(str[i++], 16);
-					bg = cell.bg = parseInt(str[i++], 16);
-				} else {
-					i++;
-					cell.fg = fg;
-					cell.bg = bg;
-				}
+		for(var i = 0; i < W*H; i++) {
+			e = mk('span');
 
-				var t = cell.t = str[i++];
-
-				var repchars = 0;
-				switch(str[i]) {
-					case 'r': repchars = 1; break;
-					case 's': repchars = 2; break;
-					case 't': repchars = 3; break;
-					case 'u': repchars = 4; break;
-					default: repchars = 0;
-				}
+			(function() {
+				var x = i % W;
+				var y = Math.floor(i / W);
+				e.addEventListener('click', function () {
+					Input.onTap(y, x);
+				});
+			})();
 
-				if (repchars > 0) {
-					var rep = parseInt(str.substr(i+1,repchars));
-					i = i + repchars + 1;
-					for (; rep>0 && ci<W*H; rep--) {
-						cell = screen[ci++];
-						cell.fg = fg;
-						cell.bg = bg;
-						cell.t = t;
-					}
-				}
+			/* End of line */
+			if ((i > 0) && (i % W == 0)) {
+				scr.appendChild(mk('br'));
 			}
-
-			blitAll();
+			/* The cell */
+			scr.appendChild(e);
+
+			cell = {
+				t: ' ',
+				fg: cursor.fg,
+				bg: cursor.bg,
+				e: e,
+				x: i % W,
+				y: Math.floor(i / W),
+			};
+			screen.push(cell);
+			_draw(cell);
 		}
-
-		/** Init the terminal */
-		function init(obj) {
-			W = obj.w;
-			H = obj.h;
-
-			/* Build screen & show */
-			var e, cell, scr = qs('#screen');
-
-			// Empty the screen node
-			while (scr.firstChild) scr.removeChild(scr.firstChild);
-
-			screen = [];
-
-			for(var i = 0; i < W*H; i++) {
-				e = mk('span');
-
-				(function() {
-					var x = i % W;
-					var y = Math.floor(i / W);
-					e.addEventListener('click', function () {
-						Input.onTap(y, x);
-					});
-				})();
-
-				/* End of line */
-				if ((i > 0) && (i % W == 0)) {
-					scr.appendChild(mk('br'));
-				}
-				/* The cell */
-				scr.appendChild(e);
-
-				cell = {t: ' ', fg: 7, bg: 0, e: e};
-				screen.push(cell);
-				blit(cell);
+	}
+
+	/** Init the terminal */
+	function _init() {
+		/* Cursor blinking */
+		clearInterval(blinkIval);
+		blinkIval = setInterval(function () {
+			cursor.a = !cursor.a;
+			if (cursor.hidden) {
+				cursor.a = false;
 			}
 
-			/* Cursor blinking */
-			clearInterval(blinkIval);
-			blinkIval = setInterval(function() {
-				cursor.a = !cursor.a;
-				if (cursor.hidden) {
-					cursor.a = false;
-				}
-
-				if (!cursor.suppress) {
-					blit(cursorCell(), cursor.a);
-				}
-			}, 500);
+			if (!cursor.suppress) {
+				_draw(_curCell(), cursor.a);
+			}
+		}, 500);
+		inited = true;
+	}
 
-			load(obj);
-		}
+	/** Decode two-byte number */
+	function parse2B(s, i) {
+		return (s.charCodeAt(i++) - 1) + (s.charCodeAt(i) - 1) * 127;
+	}
 
-		// publish
-		return {
-			init: init,
-			load: load
-		};
-	})();
+	var SEQ_SET_COLOR = 1;
+	var SEQ_REPEAT = 2;
 
-	/** Handle connections */
-	var Conn = (function() {
-		var ws;
+	/** Load screen content from a binary sequence (new) */
+	function load(str) {
+		var i = 0, ci = 0, j, jc, num, num2, t = ' ', fg, bg, bold, cell;
 
-		function onOpen(evt) {
-			console.log("CONNECTED");
-		}
+		if (!inited) _init();
 
-		function onClose(evt) {
-			console.warn("SOCKET CLOSED, code "+evt.code+". Reconnecting...");
-			setTimeout(function() {
-				init();
-			}, 1000);
+		// Set size
+		num = parse2B(str, i); i += 2;
+		num2 = parse2B(str, i); i += 2;
+		if (num != H || num2 != W) {
+			_rebuild(num, num2);
 		}
-
-		function onMessage(evt) {
-			try {
-				console.log("RX: ", evt.data);
-				// Assume all our messages are screen updates
-				Term.load(JSON.parse(evt.data));
-			} catch(e) {
-				console.error(e);
+		console.log("Size ",num, num2);
+
+		// Cursor position
+		num = parse2B(str, i); i += 2;
+		num2 = parse2B(str, i); i += 2;
+		cursorSet(num, num2);
+		console.log("Cursor at ",num, num2);
+
+		// Attributes
+		num = parse2B(str, i); i += 2;
+		cursor.fg = num & 0x0F;
+		cursor.bg = (num & 0xF0) >> 4;
+		cursor.bold = !!(num & 0x100);
+		cursor.hidden = !(num & 0x200);
+		console.log("FG ",cursor.fg, ", BG ", cursor.bg,", BOLD ", cursor.bold, ", HIDE ", cursor.hidden);
+
+		fg = cursor.fg;
+		bg = cursor.bg;
+		bold = cursor.bold;
+
+		// Here come the content
+		while(i < str.length && ci<W*H) {
+
+			j = str[i++];
+			jc = j.charCodeAt(0);
+			if (jc == SEQ_SET_COLOR) {
+				num = parse2B(str, i); i += 2;
+				fg = num & 0x0F;
+				bg = (num & 0xF0) >> 4;
+				bold = !!(num & 0x100);
+				console.log("Switch to ",fg,bg,bold);
 			}
-		}
-
-		function doSend(message) {
-			console.log("TX: ", message);
-			if (ws.readyState != 1) {
-				console.error("Socket not ready");
-				return;
+			else if (jc == SEQ_REPEAT) {
+				num = parse2B(str, i); i += 2;
+				console.log("Repeat x ",num);
+				for (; num>0 && ci<W*H; num--) {
+					cell = screen[ci++];
+					cell.fg = fg;
+					cell.bg = bg;
+					cell.t = t;
+					cell.bold = bold;
+				}
 			}
-			if (typeof message != "string") {
-				message = JSON.stringify(message);
+			else {
+				cell = screen[ci++];
+				// Unique cell character
+				t = cell.t = j;
+				cell.fg = fg;
+				cell.bg = bg;
+				cell.bold = bold;
+				console.log("Symbol ", j);
 			}
-			ws.send(message);
 		}
 
-		function init() {
-			ws = new WebSocket("ws://"+_root+"/ws/update.cgi");
-			ws.onopen = onOpen;
-			ws.onclose = onClose;
-			ws.onmessage = onMessage;
+		_drawAll();
+	}
 
-			console.log("Opening socket.");
-		}
+	return  {
+		load: load, // full load (string)
+	};
+})();
 
-		return {
-			ws: null,
-			init: init,
-			send: doSend
-		};
-	})();
-
-	//
-	// Keyboard (& mouse) input
-	//
-	var Input = (function() {
-		function sendStrMsg(str) {
-			Conn.send("STR:"+str);
+/** Handle connections */
+var Conn = (function() {
+	var ws;
+
+	function onOpen(evt) {
+		console.log("CONNECTED");
+	}
+
+	function onClose(evt) {
+		console.warn("SOCKET CLOSED, code "+evt.code+". Reconnecting...");
+		setTimeout(function() {
+			init();
+		}, 1000);
+	}
+
+	function onMessage(evt) {
+		try {
+			console.log("RX: ", evt.data);
+			// Assume all our messages are screen updates
+			Screen.load(evt.data);
+		} catch(e) {
+			console.error(e);
 		}
-
-		function sendPosMsg(y, x) {
-			Conn.send("TAP:"+y+','+x);
+	}
+
+	function doSend(message) {
+		console.log("TX: ", message);
+		if (!ws) return; // for dry testing
+		if (ws.readyState != 1) {
+			console.error("Socket not ready");
+			return;
 		}
-
-		function sendBtnMsg(n) {
-			Conn.send("BTN:"+n);
+		if (typeof message != "string") {
+			message = JSON.stringify(message);
 		}
+		ws.send(message);
+	}
+
+	function init() {
+		ws = new WebSocket("ws://"+_root+"/ws/update.cgi");
+		ws.onopen = onOpen;
+		ws.onclose = onClose;
+		ws.onmessage = onMessage;
+
+		console.log("Opening socket.");
+	}
+
+	return {
+		ws: null,
+		init: init,
+		send: doSend
+	};
+})();
 
-		function init() {
-			window.addEventListener('keypress', function(e) {
-				var code = +e.which;
-				if (code >= 32 && code < 127) {
-					var ch = String.fromCharCode(code);
-					//console.log("Typed ", ch, "code", code, e);
-					sendStrMsg(ch);
-				}
-			});
-
-			window.addEventListener('keydown', function(e) {
-				var code = e.keyCode;
-				//console.log("Down ", code, e);
-				switch(code) {
-					case 8: sendStrMsg('\x08'); break;
-					case 13: sendStrMsg('\x0d\x0a'); break;
-					case 27: sendStrMsg('\x1b'); break; // this allows to directly enter control sequences
-					case 37: sendStrMsg('\x1b[D'); break;
-					case 38: sendStrMsg('\x1b[A'); break;
-					case 39: sendStrMsg('\x1b[C'); break;
-					case 40: sendStrMsg('\x1b[B'); break;
-				}
-			});
+/** User input */
+var Input = (function() {
+	function sendStrMsg(str) {
+		Conn.send("STR:"+str);
+	}
+
+	function sendPosMsg(y, x) {
+		Conn.send("TAP:"+y+','+x);
+	}
+
+	function sendBtnMsg(n) {
+		Conn.send("BTN:"+n);
+	}
+
+	function init() {
+		window.addEventListener('keypress', function(e) {
+			var code = +e.which;
+			if (code >= 32 && code < 127) {
+				var ch = String.fromCharCode(code);
+				//console.log("Typed ", ch, "code", code, e);
+				sendStrMsg(ch);
+			}
+		});
+
+		window.addEventListener('keydown', function(e) {
+			var code = e.keyCode;
+			//console.log("Down ", code, e);
+			switch(code) {
+				case 8: sendStrMsg('\x08'); break;
+				case 10:
+				case 13: sendStrMsg('\x0d\x0a'); break;
+				case 27: sendStrMsg('\x1b'); break; // this allows to directly enter control sequences
+				case 37: sendStrMsg('\x1b[D'); break;
+				case 38: sendStrMsg('\x1b[A'); break;
+				case 39: sendStrMsg('\x1b[C'); break;
+				case 40: sendStrMsg('\x1b[B'); break;
+			}
+		});
 
-			qsa('#buttons button').forEach(function(s) {
-				s.addEventListener('click', function() {
-					sendBtnMsg(+this.dataset['n']);
-				});
+		qsa('#buttons button').forEach(function(s) {
+			s.addEventListener('click', function() {
+				sendBtnMsg(+this.dataset['n']);
 			});
-		}
+		});
+	}
 
-		return {
-			init: init,
-			onTap: sendPosMsg
-		};
-	})();
-
-
-	window.termInit = function (obj) {
-		Term.init(obj);
-		Conn.init();
-		Input.init();
+	return {
+		init: init,
+		onTap: sendPosMsg
 	};
 })();
+
+window.termInit = function (str) {
+	Screen.load(str);
+	Conn.init();
+	Input.init();
+};
diff --git a/html_orig/lang/en.php b/html_orig/lang/en.php
index d25b3b6..a9a506d 100644
--- a/html_orig/lang/en.php
+++ b/html_orig/lang/en.php
@@ -27,27 +27,22 @@ return [
 		Those are the initial settings used after ESPTerm powers on. They
 		will also be applied immediately after you submit this form.',
 
-	'term.example' => 'Color settings example',
+	'term.example' => 'Default colors preview',
 
 	'term.term_title' => 'Header text',
-	'term.term_width' => 'Screen width',
-	'term.term_height' => 'Screen height',
-	'term.default_fg' => 'Text color',
-	'term.default_bg' => 'Background',
-	'term.btn1' => 'Button 1 text',
-	'term.btn2' => 'Button 2 text',
-	'term.btn3' => 'Button 3 text',
-	'term.btn4' => 'Button 4 text',
-	'term.btn5' => 'Button 5 text',
+	'term.term_width' => 'Screen width / height',
+	'term.default_fg_bg' => 'Text / background',
+	'term.buttons' => 'Button labels',
+	'term.theme' => 'Color scheme',
 
 	// terminal color labels
 	'color.0' => 'Black',
-	'color.1' => 'Dark Red',
-	'color.2' => 'Dark Green',
-	'color.3' => 'Dim Yellow',
-	'color.4' => 'Deep Blue',
-	'color.5' => 'Deep Purple',
-	'color.6' => 'Dark Cyan',
+	'color.1' => 'Red',
+	'color.2' => 'Green',
+	'color.3' => 'Yellow',
+	'color.4' => 'Blue',
+	'color.5' => 'Purple',
+	'color.6' => 'Cyan',
 	'color.7' => 'Silver',
 	'color.8' => 'Gray',
 	'color.9' => 'Light Red',
diff --git a/html_orig/pages/cfg_term.php b/html_orig/pages/cfg_term.php
index 3cc0e04..1086a5d 100644
--- a/html_orig/pages/cfg_term.php
+++ b/html_orig/pages/cfg_term.php
@@ -6,21 +6,78 @@
 	</div>
 
 	<div class="Row">
-		<div style="font-family:monospace; font-size: 16pt; padding: 5px;" id="color-example"><?= tr("term.example") ?></div>
+		<label for="theme"><?= tr("term.theme") ?></label>
+		<select name="theme" id="theme" class="short" onchange="showColor()">
+			<option value="0">Tango</option>
+			<option value="1">Linux</option>
+			<option value="2">XTerm</option>
+			<option value="3">Rxvt</option>
+			<option value="4">Ambience</option>
+			<option value="5">Solarized</option>
+		</select>
+	</div>
+
+	<div class="Row color-preview">
+		<div class="colorprev">
+			<span data-fg=0 class="bg0 fg0">30</span><!--
+			--><span data-fg=1 class="bg0 fg1">31</span><!--
+			--><span data-fg=2 class="bg0 fg2">32</span><!--
+			--><span data-fg=3 class="bg0 fg3">33</span><!--
+			--><span data-fg=4 class="bg0 fg4">34</span><!--
+			--><span data-fg=5 class="bg0 fg5">35</span><!--
+			--><span data-fg=6 class="bg0 fg6">36</span><!--
+			--><span data-fg=7 class="bg0 fg7">37</span>
+		</div>
+
+		<div class="colorprev">
+			<span data-fg=8 class="bg0 fg8">90</span><!--
+			--><span data-fg=9 class="bg0 fg9">91</span><!--
+			--><span data-fg=10 class="bg0 fg10">92</span><!--
+			--><span data-fg=11 class="bg0 fg11">93</span><!--
+			--><span data-fg=12 class="bg0 fg12">94</span><!--
+			--><span data-fg=13 class="bg0 fg13">95</span><!--
+			--><span data-fg=14 class="bg0 fg14">96</span><!--
+			--><span data-fg=15 class="bg0 fg15">97</span>
+		</div>
+
+		<div class="colorprev">
+			<span data-bg=0 class="bg0 fg15">40</span><!--
+			--><span data-bg=1 class="bg1 fg15">41</span><!--
+			--><span data-bg=2 class="bg2 fg15">42</span><!--
+			--><span data-bg=3 class="bg3 fg0">43</span><!--
+			--><span data-bg=4 class="bg4 fg15">44</span><!--
+			--><span data-bg=5 class="bg5 fg15">45</span><!--
+			--><span data-bg=6 class="bg6 fg15">46</span><!--
+			--><span data-bg=7 class="bg7 fg0">47</span>
+		</div>
+
+		<div class="colorprev">
+			<span data-bg=8 class="bg8 fg15">100</span><!--
+			--><span data-bg=9 class="bg9 fg0">101</span><!--
+			--><span data-bg=10 class="bg10 fg0">102</span><!--
+			--><span data-bg=11 class="bg11 fg0">103</span><!--
+			--><span data-bg=12 class="bg12 fg0">104</span><!--
+			--><span data-bg=13 class="bg13 fg0">105</span><!--
+			--><span data-bg=14 class="bg14 fg0">106</span><!--
+			--><span data-bg=15 class="bg15 fg0">107</span>
+		</div>
+	</div>
+
+	<div class="Row color-preview">
+		<div style="
+		" id="color-example">
+			<?= tr("term.example") ?>
+		</div>
 	</div>
 
 	<div class="Row">
-		<label for="default_fg"><?= tr("term.default_fg") ?></label>
+		<label><?= tr("term.default_fg_bg") ?></label>
 		<select name="default_fg" id="default_fg" class="short" onchange="showColor()">
 			<?php for($i=0; $i<16; $i++): ?>
 			<option value="<?=$i?>"><?= tr("color.$i") ?></option>
 			<?php endfor; ?>
-		</select>
-	</div>
-
-	<div class="Row">
-		<label for="default_bg"><?= tr("term.default_bg") ?></label>
-		<select name="default_bg" id="default_bg" class="short" onchange="showColor()">
+		</select>&nbsp;<!--
+		--><select name="default_bg" id="default_bg" class="short" onchange="showColor()">
 			<?php for($i=0; $i<16; $i++): ?>
 				<option value="<?=$i?>"><?= tr("color.$i") ?></option>
 			<?php endfor; ?>
@@ -29,12 +86,8 @@
 
 	<div class="Row">
 		<label for="term_width"><?= tr('term.term_width') ?></label>
-		<input type="number" step=1 min=1 max=255 name="term_width" id="term_width" value="%term_width%" required>
-	</div>
-
-	<div class="Row">
-		<label for="term_height"><?= tr('term.term_height') ?></label>
-		<input type="number" step=1 min=1 max=255 name="term_height" id="term_height" value="%term_height%" required>
+		<input type="number" step=1 min=1 max=255 name="term_width" id="term_width" value="%term_width%" required>&nbsp;<!--
+		--><input type="number" step=1 min=1 max=255 name="term_height" id="term_height" value="%term_height%" required>
 	</div>
 
 	<div class="Row">
@@ -43,27 +96,11 @@
 	</div>
 
 	<div class="Row">
-		<label for="btn1"><?= tr("term.btn1") ?></label>
-		<input class="short" type="text" name="btn1" id="btn1" value="%btn1%">
-	</div>
-
-	<div class="Row">
-		<label for="btn2"><?= tr("term.btn2") ?></label>
-		<input class="short" type="text" name="btn2" id="btn2" value="%btn2%">
-	</div>
-
-	<div class="Row">
-		<label for="btn3"><?= tr("term.btn3") ?></label>
-		<input class="short" type="text" name="btn3" id="btn3" value="%btn3%">
-	</div>
-
-	<div class="Row">
-		<label for="btn4"><?= tr("term.btn4") ?></label>
-		<input class="short" type="text" name="btn4" id="btn4" value="%btn4%">
-	</div>
-
-	<div class="Row">
-		<label for="btn5"><?= tr("term.btn5") ?></label>
+		<label><?= tr("term.buttons") ?></label>
+		<input class="short" type="text" name="btn1" id="btn1" value="%btn1%">&nbsp;
+		<input class="short" type="text" name="btn2" id="btn2" value="%btn2%">&nbsp;
+		<input class="short" type="text" name="btn3" id="btn3" value="%btn3%">&nbsp;
+		<input class="short" type="text" name="btn4" id="btn4" value="%btn4%">&nbsp;
 		<input class="short" type="text" name="btn5" id="btn5" value="%btn5%">
 	</div>
 
@@ -75,12 +112,25 @@
 <script>
 	$('#default_fg').val(%default_fg%);
 	$('#default_bg').val(%default_bg%);
+	$('#theme').val(%theme%);
 
 	function showColor() {
 		var ex = qs('#color-example');
 		ex.className = '';
 		ex.classList.add('fg'+$('#default_fg').val());
 		ex.classList.add('bg'+$('#default_bg').val());
+		var th = $('#theme').val();
+		$('.color-preview').forEach(function(e) {
+			e.className = 'Row color-preview theme-'+th;
+		});
 	}
 	showColor();
+
+	$('.colorprev span').on('click', function() {
+		var fg = this.dataset.fg;
+		var bg = this.dataset.bg;
+		if (typeof fg != 'undefined') $('#default_fg').val(fg);
+		if (typeof bg != 'undefined') $('#default_bg').val(bg);
+		showColor()
+	});
 </script>
diff --git a/html_orig/pages/help.php b/html_orig/pages/help.php
index 6f6314b..ac62b71 100644
--- a/html_orig/pages/help.php
+++ b/html_orig/pages/help.php
@@ -178,7 +178,7 @@
 		<tr>
 			<td>\e[&lt;n&gt;E</td>
 			<td>[count]</td>
-			<td>Go N line down, start of line</td>
+			<td>Go N lines down, start of line</td>
 		</tr>
 		<tr>
 			<td>\e[&lt;n&gt;F</td>
diff --git a/html_orig/pages/term.php b/html_orig/pages/term.php
index 5f96a80..47d32bb 100644
--- a/html_orig/pages/term.php
+++ b/html_orig/pages/term.php
@@ -2,6 +2,7 @@
 	// Workaround for badly loaded page
 	setTimeout(function() {
 		if (typeof termInit == 'undefined' || typeof $ == 'undefined') {
+			console.error("Page load failed, refreshing…");
 			location.reload(true);
 		}
 	}, 2000);
@@ -10,7 +11,7 @@
 <h1>%term_title%</h1>
 
 <div id="termwrap">
-	<div id="screen"></div>
+	<div id="screen" class="theme-%theme%"></div>
 
 	<div id="buttons">
 		<button data-n="1" class="btn-blue">%btn1%</button><!--
@@ -21,17 +22,32 @@
 	</div>
 </div>
 
+<input id="softkb-input" autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false">
+
 <nav id="botnav">
-	<a href="<?= url('cfg_wifi') ?>"><?= tr('menu.settings') ?></a><!--
-		--><a href="<?= url('help') ?>">Help</a><!--
-		--><a href="<?= url('about') ?>">About</a>
+	<a href="#" onclick="toggleSoftKb(true); return false" class="icn-keyboard mq-tablet-max"></a><!--
+	--><a href="<?= url('cfg_wifi') ?>"><?= tr('menu.settings') ?></a><!--
+	--><a href="<?= url('help') ?>">Help</a><!--
+	--><a href="<?= url('about') ?>">About</a>
 </nav>
 
 <script>
+	// TODO cleanup
 	try {
-		termInit(%screenData%);
+		termInit("%screenData%");
+
+		// auto-clear the input box
+		$('#softkb-input').on('input', function(e) {
+			setTimeout(function(){$('#softkb-input').val('');}, 1);
+		});
 	} catch(e) {
-		console.error("Fail, reloading...");
+		console.error(e);
+		console.error("Fail, reloading…");
 		location.reload(true);
 	}
+
+	function toggleSoftKb(yes) {
+		qs('#softkb-input')[yes ? 'focus' : 'blur']();
+		qs('.icn-keyboard').blur();
+	}
 </script>
diff --git a/html_orig/sass/_fontello.scss b/html_orig/sass/_fontello.scss
index 3eae0aa..2de4b22 100644
--- a/html_orig/sass/_fontello.scss
+++ b/html_orig/sass/_fontello.scss
@@ -4,8 +4,8 @@
 
 @font-face {
   font-family: 'fontello';
-  src: url('data:application/octet-stream;base64,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') format('woff'),
-       url('data:application/octet-stream;base64,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') format('truetype');
+  src: url('data:application/octet-stream;base64,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') format('woff'),
+       url('data:application/octet-stream;base64,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JzYmJzMyNTYnJgM2NyYiLwE2Ji8BJi8BJg8BIg8BFSYnIi4BDgEPASY2JgYPAQY2BhUOARUuATceARcWBwYHBhcUBhYBrXTGcnLG6MhuBnq8ARMCCAMBAgQDERUTCgEMAggGAwEHBgQECgUGBAEIAQIBAwMEBAQEBgEGAggJBQQGAgQDAQgMAQUcBAMCAgEIAQ4BAgcJAwQEAQQCAwEHCgIEBQ0DAxQOEwQIBgECAQIFCQIBEwkGBAIFBgoDCAQHBQIDBgkEBgEFCQQFAwMCBQQBDgcLDwQQAwMBCAQIAQgDAQgEAwICAwQCBBIFAwwMAQMDAgwZGwMGBQUTBQMLBA0LAQQCBgQIBAkEUTIEBQIGBQMBGAoBAgcFBAMEBAQBAgEBAQIKBwcSBAcJBAMIBAIOAQECAg4CBAICDwgDBAMCAwUBBAoKAQQIBAUMBwIDCAMJBxYGBgUICBAEFAoBAgQCBgMOAwQBCgUIEQoCAgICAQUCBAEKAgMMAwIIAQIIAwEDAgcLBAECAggUAwgKAQIBBAIDBQIBAwIBAwEEGAMJAwEBAQMNAg4EAgMBBAMFAgYIBAICAQgEBAcIBQcMBAQCAgIGAQUEAwIDBQwEAhIBBAICBQ4JAgIKCAUJAgYGBwUJDAppc1ABDAENAQQDFQEDBQIDAgIBBQwIAwYGBgYBAQQIBAoBBwYCCgIEAQwBAQICBAsPAQIJCgEDPXTE6sR0dMTqxHT+3QEIAgYGAQQIAwULAQwBAwICDAEKBwIDBAIEAQIGDAUGAwMCBAEBAwMEAgQBAwMCAggEAgYEAQMEAQQEBgcDCAcKBwQFBgUMAwECBAIBAwwJDgMEBQcIBQMRAgMOCAUMAwEDCQkGBAMGAQ4ECgQBAgUCAgYKBAcHBwEJBQgHCAMCBwMCBAIGAgQFCgMDDgIFAgIFBAcCAQoIDwIDAwcDAg4DAgMEBgQGBAQBAS1PBAEIBAMEBg8KAgYEBQQFDgkUCwIBBhoCARcFBAYDBRQDAxAFAgEECAUIBAELGA0FDAICBAQMCA4EDgEKCxQHCAEFAw0CAQIBEgMKBAQJBQYCAwoDAgMFDAIQCBIDAwQEBgIECgcOAQUCBAEEAgIQBQ8FAgUDAgsCCAQEAgIEGA4JDgUJAQQGAQIDAgEEAwYHBgUCDwoBBAECAwECAwgFFwQCCAgDBQ4CCgoFAQID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') format('truetype');
 }
 
 %fontello-icon-base {
@@ -50,6 +50,7 @@
 $icon-codes: (
 
  
+	keyboard: '\2328',
 	about: '\2605',
 	restore: '\267c',
 	configure: '\2699',
@@ -67,6 +68,7 @@ $icon-codes: (
 /* Fontello classes */
 
  
+.icn-keyboard::before { content: '\2328'; } 
 .icn-about::before { content: '\2605'; } 
 .icn-restore::before { content: '\267c'; } 
 .icn-configure::before { content: '\2699'; } 
diff --git a/html_orig/sass/_term-colors.scss b/html_orig/sass/_term-colors.scss
deleted file mode 100644
index b665aee..0000000
--- a/html_orig/sass/_term-colors.scss
+++ /dev/null
@@ -1,24 +0,0 @@
-$term-colors:
-	// 0 black, 1 red, 2 green, 3 yellow
-	// 4 blue, 5 mag, 6 cyan, 7 white
-	#111213, #CC0000, #4E9A06, #C4A000,
-	#3465A4, #75507B, #06989A, #D3D7CF,
-	// BRIGHT
-	// 8 black, 9 red, 10 green, 11 yellow
-	// 12 blue, 13 mag, 14 cyan, 15 white
-	#555753, #EF2929, #8AE234, #FCE94F,
-	#729FCF, #AD7FA8, #34E2E2, #EEEEEC;
-
-@for $i from 1 through length($term-colors) {
-	$c: nth($term-colors, $i);
-	.fg#{$i - 1} { color: $c; }
-	.bg#{$i - 1} { background-color: $c; }
-}
-
-.fg8, .fg9, .fg10, .fg11, .fg12, .fg13, .fg14, .fg15 {
-	font-weight: bold;
-}
-
-.nb {
-	font-weight: normal !important;
-}
diff --git a/html_orig/sass/app.scss b/html_orig/sass/app.scss
index de9b263..abe8cb0 100755
--- a/html_orig/sass/app.scss
+++ b/html_orig/sass/app.scss
@@ -33,7 +33,6 @@ $c-form-highlight-a: #2ea1f9;
 @import "pages/wifi";
 @import "pages/term";
 @import "pages/about";
-@import "term-colors";
 
 // media queries
 
diff --git a/html_orig/sass/pages/_term.scss b/html_orig/sass/pages/_term.scss
index 17634ba..c058bfe 100755
--- a/html_orig/sass/pages/_term.scss
+++ b/html_orig/sass/pages/_term.scss
@@ -1,8 +1,13 @@
 body.term {
-	h1 {
-		font-size: fsize(5);
-		@include media($phone) {
-			font-size: fsize(3);
+	#content {
+		padding-left: 0;
+		padding-right: 0;
+
+		h1 {
+			font-size: fsize(5);
+			@include media($phone) {
+				font-size: fsize(3);
+			}
 		}
 	}
 
@@ -36,7 +41,7 @@ body.term {
 			margin: 0 3px;
 			padding: 8px 5px;
 			//width: 18%;
-			min-width: 65px;
+			min-width: 62px;
 			//max-width: 65px;
 			//min-width: initial;
 			cursor: pointer;
@@ -53,16 +58,133 @@ body.term {
 			text-decoration: underline;
 
 			&, &:visited, &:link {
-				color: #2e4d6e;
+				color: #336085;
 			}
 
 			&:hover {
 				color: #5abfff;
 			}
 		}
+
+		.icn-keyboard {
+			text-decoration: none;
+			font-size: 150%;
+			vertical-align: middle;
+		}
 	}
 }
 
 #termwrap {
 	text-align: center;
 }
+
+#softkb-input {
+	position: absolute;
+	top: -9999px;
+}
+
+// "non-bold"
+.nb {
+	font-weight: normal !important;
+}
+
+// Tango
+.theme-0 {
+	$term-colors:
+			#111213, #CC0000, #4E9A06, #C4A000, #3465A4, #75507B, #06989A, #D3D7CF,
+			#555753, #EF2929, #8AE234, #FCE94F, #729FCF, #AD7FA8, #34E2E2, #EEEEEC;
+	@for $i from 1 through length($term-colors) {
+		$c: nth($term-colors, $i);
+		.fg#{$i - 1} { color: $c; }
+		.bg#{$i - 1} { background-color: $c; }
+	}
+}
+
+// Linux
+.theme-1 {
+	$term-colors:
+			#000000, #aa0000, #00aa00, #aa5500, #0000aa, #aa00aa, #00aaaa, #aaaaaa,
+			#555555, #ff5555, #55ff55, #ffff55, #5555ff, #ff55ff, #55ffff, #ffffff;
+	@for $i from 1 through length($term-colors) {
+		$c: nth($term-colors, $i);
+		.fg#{$i - 1} { color: $c; }
+		.bg#{$i - 1} { background-color: $c; }
+	}
+}
+
+// xterm
+.theme-2 {
+	$term-colors:
+			#000000, #cd0000, #00cd00, #cdcd00, #0000ee, #cd00cd, #00cdcd, #e5e5e5,
+			#7f7f7f, #ff0000, #00ff00, #ffff00, #5c5cff, #ff00ff, #00ffff, #ffffff;
+	@for $i from 1 through length($term-colors) {
+		$c: nth($term-colors,  $i);
+		.fg#{$i - 1} { color: $c; }
+		.bg#{$i - 1} { background-color: $c; }
+	}
+}
+
+// rxvt
+.theme-3 {
+	$term-colors:
+			#000000, #cd0000, #00cd00, #cdcd00, #0000cd, #cd00cd, #00cdcd, #faebd7,
+			#404040, #ff0000, #00ff00, #ffff00, #0000ff, #ff00ff, #00ffff, #ffffff;
+	@for $i from 1 through length($term-colors) {
+		$c: nth($term-colors,  $i);
+		.fg#{$i - 1} { color: $c; }
+		.bg#{$i - 1} { background-color: $c; }
+	}
+}
+
+// Ambience
+.theme-4 {
+	$term-colors:
+			#2e3436, #cc0000, #4e9a06, #c4a000, #3465a4, #75507b, #06989a, #d3d7cf,
+			#555753, #ef2929, #8ae234, #fce94f, #729fcf, #ad7fa8, #34e2e2, #eeeeec;
+	@for $i from 1 through length($term-colors) {
+		$c: nth($term-colors,  $i);
+		.fg#{$i - 1} { color: $c; }
+		.bg#{$i - 1} { background-color: $c; }
+	}
+}
+
+// Solarized
+.theme-5 {
+	$term-colors:
+			#073642, #dc322f, #859900, #b58900, #268bd2, #d33682, #2aa198, #eee8d5,
+			#002b36, #cb4b16, #586e75, #657b83, #839496, #6c71c4, #93a1a1, #fdf6e3;
+	@for $i from 1 through length($term-colors) {
+		$c: nth($term-colors,  $i);
+		.fg#{$i - 1} { color: $c; }
+		.bg#{$i - 1} { background-color: $c; }
+	}
+}
+
+.bold {
+	font-weight: bold !important;
+}
+
+.Row.color-preview {
+	font-family: monospace;
+	font-size: 16pt;
+	display: block;
+	margin-bottom: 0;
+
+	padding-left: $form-label-w;
+
+	@include media($phone) {
+		padding-left: 0;
+		font-size: 14pt;
+	}
+
+	.colorprev {
+		display:block;
+		margin: 0;
+		cursor: pointer;
+	}
+}
+
+#color-example {
+	display: inline-block;
+	padding: 5px;
+}
diff --git a/user/cgi_main.c b/user/cgi_main.c
index 70a5ec7..c1aba85 100644
--- a/user/cgi_main.c
+++ b/user/cgi_main.c
@@ -44,12 +44,16 @@ httpd_cgi_state ICACHE_FLASH_ATTR tplScreen(HttpdConnData *connData, char *token
 	else if (streq(token, "btn5")) {
 		httpdSend(connData, termconf->btn5, -1);
 	}
-	else if (streq(token, "default_bg")) {
-		sprintf(buff, "%d", termconf->default_bg);
-		httpdSend(connData, buff, -1);
-	}
-	else if (streq(token, "default_fg")) {
-		sprintf(buff, "%d", termconf->default_fg);
+//	else if (streq(token, "default_bg")) {
+//		sprintf(buff, "%d", termconf->default_bg);
+//		httpdSend(connData, buff, -1);
+//	}
+//	else if (streq(token, "default_fg")) {
+//		sprintf(buff, "%d", termconf->default_fg);
+//		httpdSend(connData, buff, -1);
+//	}
+	else if (streq(token, "theme")) {
+		sprintf(buff, "%d", termconf->theme);
 		httpdSend(connData, buff, -1);
 	}
 	else if (streq(token, "screenData")) {
diff --git a/user/cgi_term_cfg.c b/user/cgi_term_cfg.c
index f42c2c5..86869fa 100644
--- a/user/cgi_term_cfg.c
+++ b/user/cgi_term_cfg.c
@@ -82,6 +82,17 @@ cgiTermCfgSetParams(HttpdConnData *connData)
 		}
 	}
 
+	if (GET_ARG("theme")) {
+		dbg("Screen color theme: %s", buff);
+		int theme = atoi(buff);
+		if (theme >= 0 && theme <= 5) { // ALWAYS ADJUST WHEN ADDING NEW THEME!
+			termconf->theme = (u8) theme;
+		} else {
+			warn("Bad theme num: %s", buff);
+			redir_url += sprintf(redir_url, "theme,");
+		}
+	}
+
 	if (GET_ARG("term_title")) {
 		dbg("Terminal title default text: \"%s\"", buff);
 		strncpy_safe(termconf->title, buff, 64); // ATTN those must match the values in
@@ -148,6 +159,9 @@ tplTermCfg(HttpdConnData *connData, char *token, void **arg)
 	else if (streq(token, "term_height")) {
 		sprintf(buff, "%d", termconf->height);
 	}
+	else if (streq(token, "theme")) {
+		sprintf(buff, "%d", termconf->theme);
+	}
 	else if (streq(token, "default_bg")) {
 		sprintf(buff, "%d", termconf->default_bg);
 	}
diff --git a/user/persist.c b/user/persist.c
index a5d7cab..14d9573 100644
--- a/user/persist.c
+++ b/user/persist.c
@@ -105,7 +105,15 @@ persist_load(void)
 	}
 
 	if (hard_reset) {
+		// Zero all out
+		memset(&persist, 0, sizeof(PersistBlock));
+
 		persist_load_hard_default();
+
+		// write them also as defaults
+		memcpy(&persist.defaults, &persist.current, sizeof(AppConfigBundle));
+		persist_store();
+
 		// this also stores them to flash and applies to modules
 	} else {
 		apply_live_settings();
@@ -141,9 +149,6 @@ persist_load_hard_default(void)
 	restore_live_settings_to_hard_defaults();
 	persist_store();
 
-//	// Store current -> default
-//	memcpy(&persist.defaults, &persist.current, sizeof(AppConfigBundle));
-
 	info("[Persist] Settings restored to hard defaults.");
 
 	apply_live_settings(); // apply
diff --git a/user/persist.h b/user/persist.h
index 9e110a8..aa05e52 100644
--- a/user/persist.h
+++ b/user/persist.h
@@ -16,7 +16,7 @@
 
 // Changing this could be used to force-erase the config area
 // after a firmware upgrade
-#define CHECKSUM_SALT 1
+#define CHECKSUM_SALT 2
 
 #define APPCONF_SIZE 2048
 
diff --git a/user/screen.c b/user/screen.c
index ce9075d..1e29a8b 100644
--- a/user/screen.c
+++ b/user/screen.c
@@ -671,7 +671,25 @@ screenSerializeToBuffer(char *buffer, size_t buf_len, void **data)
 		ss->lastFg = 0;
 		ss->lastChar = '\0';
 
-		bufprint("{\n \"w\": %d, \"h\": %d,\n \"x\": %d, \"y\": %d,\n \"cv\": %d,\n \"screen\": \"", W, H, cursor.x, cursor.y, cursor.visible);
+		// TODO implement the new more efficient encoder!
+
+		bufprint(
+			"{"
+			"\"w\":%d,"
+			"\"h\":%d,"
+			"\"x\":%d,"
+			"\"y\":%d,"
+			"\"fg\":%d,"
+			"\"bg\":%d,"
+			"\"cv\":%d,"
+			"\"screen\":\"",
+			W,
+			H,
+			cursor.x,
+			cursor.y,
+			cursor.fg,
+			cursor.bg,
+			cursor.visible);
 	}
 
 	int i = ss->index;
diff --git a/user/screen.h b/user/screen.h
index 72bd207..4ddb10e 100644
--- a/user/screen.h
+++ b/user/screen.h
@@ -52,6 +52,7 @@ typedef struct {
 	char btn3[TERM_BTN_LEN];
 	char btn4[TERM_BTN_LEN];
 	char btn5[TERM_BTN_LEN];
+	u8 theme;
 
 	u8 _filler[
 		TERMCONF_SIZE
@@ -59,6 +60,7 @@ typedef struct {
 		- 4
 		- 1
 		- 1
+		- 1
 		- TERM_TITLE_LEN
 		- TERM_BTN_LEN * 5
 	];
