Skip to content

plirof/jsspeccy2

 
 

Repository files navigation

JSSpeccy: A ZX Spectrum emulator in pure JavaScript
===================================================

https://github.com/gasman/jsspeccy2

Foreword to version 2.x
-----------------------
When I started this project in 2009, writing an emulator in JavaScript was a
silly idea. Now, thanks to advances in JavaScript engines, and new APIs
emerging from HTML5 and WebGL, it has become a significantly less silly idea,
which means that the time is right for a more serious attempt at the job.

What's new?
-----------
Everything, basically... it's a ground-up rewrite. In particular:

* Z80 core uses typed arrays[0] where appropriate, for a healthy performance
  boost (and significantly less faffing around with '& 0xff' everywhere to get
  around the lack of strong typing in JavaScript)
* More JavaScript-ish architecture - the Z80 instruction set is built up
  through copious use of closures, rather than borrowing Fuse's Perl generator
  script wholesale. (It's still heavily based on Fuse's Z80 core though.)
* 128K support!
* 99% accurate display emulation, for multicolour effects and the like
* TZX file support (only via tape traps; custom loaders won't work)
* Integration with the World Of Spectrum API, for instant loading of thousands
  of software titles

[0] https://developer.mozilla.org/en/javascript_typed_arrays

Building
--------
Perl, CoffeeScript[1] and Closure Compiler[2] are required. To build:

    make

This will place all web-distributable files into the 'dist' folder.

[1] http://jashkenas.github.com/coffee-script/
[2] https://developers.google.com/closure/compiler/

Browser support
---------------
Tested successfully on Chrome 32, Firefox 26 and Safari 7.0.1. Support for typed arrays and
the PixelData API are absolutely required, and it'll almost certainly stay that
way.

Matt Westcott
<[email protected]> - http://matt.west.co.tt/ - @gasmanic

=====================
plirof : try to install with npm :
npm install -g coffee-script     -ok
npm install makefile             -ok
activated apt2sfs "make"       (installed from debian)
perl already existed
npm install --save-dev gulp-closure-compiler
npm -g install closurecompiler
npm install --save google-closure-compiler
npm install make -g   (maybe ...)
 




make

Packages

No packages published

Languages

  • JavaScript 47.9%
  • CoffeeScript 42.9%
  • HTML 7.4%
  • Other 1.8%