In article <502uG.333898$xa7.2...@fx24.am4>,
Johann 'Myrkraverk' Oskarsson <joh...@myrkraverk.invalid> wrote:
Not yet but it's in a more or less working state on a 65c816 CPU
with 512KB of RAM.
Background to the project started on a 65C02:
https://projects.drogon.net/6502-ruby/
65816 Board picture:
https://unicorn.drogon.net/ruby816-2.jpg
CPU runs at 16Mhz.
Quick demo (taken from a B program 'back-ported' to BCPL :)
(Well, quick is relative - this takes 20 seconds to run - it's a full 32-bit implementation
of the current compiler with a cintcode VM)
GET "libhdr"
LET start() = VALOF
{
LET cx,cy,x,y,x2,y2 = ?,?,?,?,?,?
LET iter = ?
LET xmin,xmax,ymin,ymax,maxiter,dx,dy = ?,?,?,?,?,?,?
xmin := -8601
xmax := 2867
ymin := -4915
ymax := 4915
maxiter := 32
dx := (xmax-xmin)/79
dy := (ymax-ymin)/30
cy := ymin
WHILE cy <= ymax DO
{
cx := xmin
WHILE cx <= xmax DO
{
x := 0
y := 0
x2 := 0
y2 := 0
iter:=0
WHILE iter < maxiter DO
{
IF x2+y2 > 16384 THEN
BREAK
y := ((x*y)/2048)+cy
x := x2-y2+cx
x2 := (x*x)/4096
y2 := (y*y)/4096
iter := iter + 1
}
sawrch (' '+iter)
cx := cx + dx
}
sawrch ('*n')
cy := cy + dy
}
// sys (Sys_quit, 0)
RESULTIS 0
}
=== output ===
!!!!!!!!!!!!!!!"""""""""""""####################################""""""""""""""""
!!!!!!!!!!!!!""""""""""########################$$$$$%(&&%%$$$$$######"""""""""""
!!!!!!!!!!!!"""""""#######################$$$$$$$$%%%&)@(&&'%$$$$$######""""""""
!!!!!!!!!!""""""#######################$$$$$$$$$%%%%&'(*00*'&%%$$$$$$######"""""
!!!!!!!!!"""""######################$$$$$$$$$$%%%%&')*+2@@,)(&%%%$$$$$$#######""
!!!!!!!!""""#####################$$$$$$$$$$%%%&&&''),@@@@@@@,'&%%%%%$$$$########
!!!!!!!"""#####################$$$$$$$$$%%&''''''()*,@@@@@@@*(('&&&&&&%$$$######
!!!!!!"""###################$$$$$$$%%%%&&'*34.,+@@1@@@@@@@@@;@0@7)(()0)'%$$#####
!!!!!!"##################$$$$%%%%%%%%&&&'()@@@@@@@@@@@@@@@@@@@@@@@@@@@,(%%$$####
!!!!!"###############$$$%%%%%%%%%%%&&&'(+@-@@@@@@@@@@@@@@@@@@@@@@@@@=+('&%%$$###
!!!!"##########$$$$$%%&(.'''''''''''''(*,5@@@@@@@@@@@@@@@@@@@@@@@@@@@@+)-&%$$###
!!!!"####$$$$$$$$%%%%&&(.2,.*+10++*)))*.>@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@2+&%$$$##
!!!!##$$$$$$$$$%%%%%&''()9?@@@@@@@@@,,-@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@-*&%$$$##
!!!!#$$$$$$$$%%%%%&,(()+1@@@@@@@@@@@@@3@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@79'%%$$$$#
!!!#$%%$$$%&&&&&''().1?2<@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*'&%%$$$$#
!!!()**,+9652/1//35>@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@4+)'&&%%$$$$#
!!!#$%%%$%&&&&&'''()35@3?@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@)'&%%$$$$#
!!!"$$$$$$$$%%%%%%&+())+1@@@@@@@@@@@@@4@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@2&%%$$$$#
!!!!##$$$$$$$$$%%%%%&''()=<@@@@@@@@@.,-@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@/0&%$$$##
!!!!"####$$$$$$$$%%%%&&(,419*+/@+.*)))*.;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@5)&%$$$##
!!!!"#########$$$$$$%%&(-(''''(''''''((*-4@@@@@@@@@@@@@@@@@@@@@@@@@@@4+)-&%$$###
!!!!!"###############$$$%%%%%%%%%%&&&&'(,@.@@@@@@@@@@@@@@@@@@@@@@@@@1+('&%%$$###
!!!!!!"##################$$$$%%%%%%%%&&&'()7@@@@@@@@@@@@@@@@@@@@@@@@@@+'%%$$####
!!!!!!""####################$$$$$$%%%%%&&'+94/-+1@3@@@@@@@@@@@1@@))))-*'%$$#####
!!!!!!!"""#####################$$$$$$$$%%%&''''''()*,@@@@@@@*)('&&&&&&%$$$######
!!!!!!!!""""#####################$$$$$$$$$$%%%&&&''(,@@@@@@@+'&&%%%%%$$$########
!!!!!!!!!"""""######################$$$$$$$$$$%%%%&'*++3@@,))&%%%$$$$$$#######""
!!!!!!!!!!""""""#######################$$$$$$$$$%%%%&'(*..*'&%%$$$$$$######"""""
!!!!!!!!!!!""""""""#######################$$$$$$$$%%&&)@(''(%$$$$$$#####""""""""
!!!!!!!!!!!!!""""""""""#######################$$$$$$%+'&%%$$$$$######"""""""""""
!!!!!!!!!!!!!!!""""""""""""#####################################""""""""""""""""
Gordon