Tunguska the ternary emulator

Balanced Ternary Numeral System - forum was moved from http://ternary.info

Moderator: haqreu

User avatar
Shaos
Admin
Posts: 24011
Joined: 08 Jan 2003 23:22
Location: Silicon Valley

Re: Tunguska the ternary emulator

Post by Shaos »

eudoxie wrote: I don't think there's any benefit from implementing it with hardware, you could simply add a few lines to the painting function, something like

LDA .color
CMP #transparentvalue
JNE $$+4
RST
Hardware "blitting" with color key is always better than software copying pixel by pixel
Mac Buster
Retired
Posts: 1474
Joined: 03 Aug 2003 22:37
Location: Moscow

Re: Tunguska the ternary emulator

Post by Mac Buster »

Yes, I mean support for hardware blitting with transparrent colour.
eudoxie
Maniac
Posts: 277
Joined: 17 Sep 2012 13:36
Location: 81.170.128.52

Re: Tunguska the ternary emulator

Post by eudoxie »

Hm, I'll consider it.

I've done some reworking of the assembler, so if it starts acting up do keep me appraised.
eudoxie
Maniac
Posts: 277
Joined: 17 Sep 2012 13:36
Location: 81.170.128.52

Re: Tunguska the ternary emulator

Post by eudoxie »

I'm getting ready to prepare for another alpha release (I'm thinking I'll release it sometime next week). Though I'm probably going to disable the floating point functionality in the release. I'm not fond of how it's turned out. I'll either rework it in a future release, or scrap it entirely.
eudoxie
Maniac
Posts: 277
Joined: 17 Sep 2012 13:36
Location: 81.170.128.52

Re: Tunguska the ternary emulator

Post by eudoxie »

Added some new instructions...

XAM (Swap A with memory value), XAX (Swap A with X) , XAY (Swap A with Y), XYX (Swap X with Y), PAUSE (software induced pause, acts like a breakpoint in a debugger)

I also re-enabled the floating point operations.
eudoxie
Maniac
Posts: 277
Joined: 17 Sep 2012 13:36
Location: 81.170.128.52

Re: Tunguska the ternary emulator

Post by eudoxie »

Indirect Y addressing had somehow managed to be broken all this time. Anyways, it's fixed now, and works like it should.
Mac Buster
Retired
Posts: 1474
Joined: 03 Aug 2003 22:37
Location: Moscow

Re: Tunguska the ternary emulator

Post by Mac Buster »

Great news, I'm waiting for new release :)
eudoxie
Maniac
Posts: 277
Joined: 17 Sep 2012 13:36
Location: 81.170.128.52

Re: Tunguska the ternary emulator

Post by eudoxie »

It probably will be released within a day or two. I'm doing release testing right now.

I've been putting together a manual for Tunguska. So far it consists of documentation for the assembler and emulator, a guide to ternary numeral systems and logic, and the specifications. It's gotten quite big, I think it's almost 30 pages long:

http://tunguska.sourceforge.net/The_Fine_Manual.pdf

Shaos: copy located here: http://nedopc.org/ternary/tunguska/The_Fine_Manual.pdf
eudoxie
Maniac
Posts: 277
Joined: 17 Sep 2012 13:36
Location: 81.170.128.52

Re: Tunguska the ternary emulator

Post by eudoxie »

I'd appreciate it if you could try build this pre-release package and see if there is any issues with it on your system.

http://nedopc.org/ternary/tunguska/tung ... se.tar.bz2
User avatar
Shaos
Admin
Posts: 24011
Joined: 08 Jan 2003 23:22
Location: Silicon Valley

Re: Tunguska the ternary emulator

Post by Shaos »

eudoxie wrote: I'd appreciate it if you could try build this pre-release package and see if there is any issues with it on your system.

http://nedopc.org/ternary/tunguska/tung ... se.tar.bz2
flex 2.5.4
bison 2.1


lex.yy.cc: In member function `virtual int yyFlexLexer::yylex()':
lex.yy.cc:647: error: `yy_buffer_stack' was not declared in this scope
lex.yy.cc:647: error: `yy_buffer_stack_top' was not declared in this scope
lex.yy.cc:648: error: `yyensure_buffer_stack' was not declared in this scope
lex.yy.cc:909: error: `yy_buffer_stack' was not declared in this scope
lex.yy.cc:909: error: `yy_buffer_stack_top' was not declared in this scope
lex.yy.cc:932: error: `yy_buffer_stack' was not declared in this scope
lex.yy.cc:932: error: `yy_buffer_stack_top' was not declared in this scope
lex.yy.cc: In constructor `yyFlexLexer::yyFlexLexer(std::istream*, std::ostream*)':
lex.yy.cc:1049: error: `yy_buffer_stack' was not declared in this scope
lex.yy.cc:1050: error: `yy_buffer_stack_top' was not declared in this scope
lex.yy.cc:1051: error: `yy_buffer_stack_max' was not declared in this scope
lex.yy.cc: In destructor `virtual yyFlexLexer::~yyFlexLexer()':
lex.yy.cc:1061: error: `yy_buffer_stack' was not declared in this scope
lex.yy.cc:1061: error: `yy_buffer_stack_top' was not declared in this scope
lex.yy.cc: In member function `virtual void yyFlexLexer::switch_streams(std::istream*, std::ostream*)':
lex.yy.cc:1068: error: `yy_buffer_stack' was not declared in this scope
lex.yy.cc:1068: error: `yy_buffer_stack_top' was not declared in this scope
lex.yy.cc: In member function `int yyFlexLexer::yy_get_next_buffer()':
lex.yy.cc:1120: error: `yy_buffer_stack' was not declared in this scope
lex.yy.cc:1120: error: `yy_buffer_stack_top' was not declared in this scope
lex.yy.cc: In member function `void yyFlexLexer::yyunput(int, char*)':
lex.yy.cc:1308: error: `yy_buffer_stack' was not declared in this scope
lex.yy.cc:1308: error: `yy_buffer_stack_top' was not declared in this scope
lex.yy.cc: In member function `int yyFlexLexer::yyinput()':
lex.yy.cc:1352: error: `yy_buffer_stack' was not declared in this scope
lex.yy.cc:1352: error: `yy_buffer_stack_top' was not declared in this scope
lex.yy.cc: In member function `virtual void yyFlexLexer::yyrestart(std::istream*)':
lex.yy.cc:1420: error: `yy_buffer_stack' was not declared in this scope
lex.yy.cc:1420: error: `yy_buffer_stack_top' was not declared in this scope
lex.yy.cc:1421: error: `yyensure_buffer_stack' was not declared in this scope
lex.yy.cc:1426: error: `yy_buffer_stack' was not declared in this scope
lex.yy.cc:1426: error: `yy_buffer_stack_top' was not declared in this scope
lex.yy.cc: In member function `virtual void yyFlexLexer::yy_switch_to_buffer(yy_buffer_state*)':
lex.yy.cc:1442: error: `yyensure_buffer_stack' was not declared in this scope
lex.yy.cc:1443: error: `yy_buffer_stack' was not declared in this scope
lex.yy.cc:1443: error: `yy_buffer_stack_top' was not declared in this scope
lex.yy.cc:1446: error: `yy_buffer_stack' was not declared in this scope
lex.yy.cc:1446: error: `yy_buffer_stack_top' was not declared in this scope
lex.yy.cc:1454: error: `yy_buffer_stack' was not declared in this scope
lex.yy.cc:1454: error: `yy_buffer_stack_top' was not declared in this scope
lex.yy.cc: In member function `void yyFlexLexer::yy_load_buffer_state()':
lex.yy.cc:1467: error: `yy_buffer_stack' was not declared in this scope
lex.yy.cc:1467: error: `yy_buffer_stack_top' was not declared in this scope
lex.yy.cc: In member function `virtual void yyFlexLexer::yy_delete_buffer(yy_buffer_state*)':
lex.yy.cc:1513: error: `yy_buffer_stack' was not declared in this scope
lex.yy.cc:1513: error: `yy_buffer_stack_top' was not declared in this scope
lex.yy.cc: In member function `void yyFlexLexer::yy_init_buffer(yy_buffer_state*, std::istream*)':
lex.yy.cc:1542: error: `yy_buffer_stack' was not declared in this scope
lex.yy.cc:1542: error: `yy_buffer_stack_top' was not declared in this scope
lex.yy.cc: In member function `void yyFlexLexer::yy_flush_buffer(yy_buffer_state*)':
lex.yy.cc:1574: error: `yy_buffer_stack' was not declared in this scope
lex.yy.cc:1574: error: `yy_buffer_stack_top' was not declared in this scope
lex.yy.cc: At global scope:
lex.yy.cc:1585: error: no `void yyFlexLexer::yypush_buffer_state(yy_buffer_state*)' member function declared in class `yyFlexLexer'
lex.yy.cc: In member function `void yyFlexLexer::yypush_buffer_state(yy_buffer_state*)':
lex.yy.cc:1589: error: `yyensure_buffer_stack' was not declared in this scope
lex.yy.cc:1592: error: `yy_buffer_stack' was not declared in this scope
lex.yy.cc:1592: error: `yy_buffer_stack_top' was not declared in this scope
lex.yy.cc:1601: error: `yy_buffer_stack' was not declared in this scope
lex.yy.cc:1601: error: `yy_buffer_stack_top' was not declared in this scope
lex.yy.cc:1603: error: `yy_buffer_stack' was not declared in this scope
lex.yy.cc:1603: error: `yy_buffer_stack_top' was not declared in this scope
lex.yy.cc: At global scope:
lex.yy.cc:1615: error: no `void yyFlexLexer::yypop_buffer_state()' member function declared in class `yyFlexLexer'
lex.yy.cc: In member function `void yyFlexLexer::yypop_buffer_state()':
lex.yy.cc:1616: error: `yy_buffer_stack' was not declared in this scope
lex.yy.cc:1616: error: `yy_buffer_stack_top' was not declared in this scope
lex.yy.cc:1619: error: `yy_buffer_stack' was not declared in this scope
lex.yy.cc:1619: error: `yy_buffer_stack_top' was not declared in this scope
lex.yy.cc: At global scope:
lex.yy.cc:1634: error: no `void yyFlexLexer::yyensure_buffer_stack()' member function declared in class `yyFlexLexer'
lex.yy.cc: In member function `void yyFlexLexer::yyensure_buffer_stack()':
lex.yy.cc:1637: error: `yy_buffer_stack' was not declared in this scope
lex.yy.cc:1650: error: `yy_buffer_stack_max' was not declared in this scope
lex.yy.cc:1651: error: `yy_buffer_stack_top' was not declared in this scope
lex.yy.cc:1655: error: `yy_buffer_stack_top' was not declared in this scope
lex.yy.cc:1655: error: `yy_buffer_stack_max' was not declared in this scope
lex.yy.cc:1661: error: `yy_buffer_stack' was not declared in this scope
make[3]: *** [lex.yy.o] Ошибка 1
make[2]: *** [all] Ошибка 2
make[1]: *** [all-recursive] Ошибка 1
make: *** [all] Ошибка 2
Last edited by Shaos on 11 Nov 2012 17:48, edited 1 time in total.
eudoxie
Maniac
Posts: 277
Joined: 17 Sep 2012 13:36
Location: 81.170.128.52

Re: Tunguska the ternary emulator

Post by eudoxie »

eudoxie
Maniac
Posts: 277
Joined: 17 Sep 2012 13:36
Location: 81.170.128.52

Re: Tunguska the ternary emulator

Post by eudoxie »

Oh, wait, here's an even better version. Compiled without a hitch on FreeBSD.

http://nedopc.org/ternary/tunguska/tung ... e3.tar.bz2
User avatar
Shaos
Admin
Posts: 24011
Joined: 08 Jan 2003 23:22
Location: Silicon Valley

Re: Tunguska the ternary emulator

Post by Shaos »

eudoxie wrote: Oh, wait, here's an even better version. Compiled without a hitch on FreeBSD.

http://nedopc.org/ternary/tunguska/tung ... e3.tar.bz2
The same thing :(

P.S. Pregenerated scanner.cc and parser.cc MUST be removed from archive!
Last edited by Shaos on 11 Nov 2012 17:49, edited 1 time in total.
eudoxie
Maniac
Posts: 277
Joined: 17 Sep 2012 13:36
Location: 81.170.128.52

Re: Tunguska the ternary emulator

Post by eudoxie »

User avatar
Shaos
Admin
Posts: 24011
Joined: 08 Jan 2003 23:22
Location: Silicon Valley

Re: Tunguska the ternary emulator

Post by Shaos »

It's working
Mouse works also! :)
Last edited by Shaos on 11 Nov 2012 17:49, edited 1 time in total.