David Schmenk
|
07733cc5a6
|
JIT 65802 WIP
|
2018-04-10 18:11:35 -07:00 |
|
David Schmenk
|
b33856ee28
|
Get 65802 to sort-of run JIT
|
2018-04-08 14:59:45 -07:00 |
|
David Schmenk
|
bc7e38ee17
|
Merge branch 'devel'
|
2018-04-07 09:27:21 -07:00 |
|
David Schmenk
|
dad0f4b4d5
|
Add NO-JITC flag to module SYSFLAGS
|
2018-04-06 17:53:51 -07:00 |
|
David Schmenk
|
fd641bef8f
|
JIT specific module loading
|
2018-04-06 14:22:39 -07:00 |
|
David Schmenk
|
82a4b57c43
|
65802 requires 128K and JITC
|
2018-04-06 12:42:48 -07:00 |
|
David Schmenk
|
558290100c
|
Clear MSB for DLB/DAB
|
2018-04-05 11:20:43 -07:00 |
|
David Schmenk
|
9a82e3b5fb
|
Looking for one more JITC bug
|
2018-04-03 13:56:55 -07:00 |
|
David Schmenk
|
3e0d81d09d
|
Put buffer at beginning of SBANK
|
2018-04-03 10:10:41 -07:00 |
|
Dave Schmenk
|
763cbd6986
|
Full 4K JIT codebuffer
|
2018-04-02 21:46:53 -07:00 |
|
David Schmenk
|
347aa5329d
|
Leave buffer for maxcode and assembly defcpy
|
2018-04-02 15:41:41 -07:00 |
|
David Schmenk
|
9e4f9936af
|
Cleanup
|
2018-04-02 13:51:04 -07:00 |
|
David Schmenk
|
d0215eb7e1
|
Allocate proper size for defentries
|
2018-04-02 12:36:44 -07:00 |
|
David Schmenk
|
58eb615176
|
Remove JITC puts from JIT module
|
2018-04-02 10:17:33 -07:00 |
|
David Schmenk
|
e5e43f58b7
|
Save/Restore JIT code ptr
|
2018-04-02 10:02:17 -07:00 |
|
David Schmenk
|
77ca9b2813
|
Re-org some JIT <-> CMDSYS <-> VM connections
|
2018-04-02 09:17:18 -07:00 |
|
David Schmenk
|
d4f15e3a90
|
Apple /// JITC
|
2018-04-02 08:47:16 -07:00 |
|
David Schmenk
|
574911e389
|
Apple /// JIT WIP
|
2018-04-01 18:53:56 -07:00 |
|
David Schmenk
|
46b9f073d5
|
New JIT defaults
|
2018-03-31 17:15:18 -07:00 |
|
David Schmenk
|
51ba2df618
|
Move JIT compiler to top of AUX memory
|
2018-03-30 13:12:39 -07:00 |
|
David Schmenk
|
148031d192
|
Make SIEVE JITable
|
2018-03-29 07:58:31 -07:00 |
|
David Schmenk
|
3968f82625
|
Lose the JIT warmup count
|
2018-03-28 17:02:26 -07:00 |
|
David Schmenk
|
27a2d8d0b7
|
Start more efficient coding for writing native code to buffer
|
2018-03-24 10:02:14 -07:00 |
|
David Schmenk
|
a7ecdc7edc
|
Save a few bytes so we can test JIT
|
2018-03-22 16:38:05 -07:00 |
|
David Schmenk
|
cdb0dac92f
|
Fix SEL and SUBI
|
2018-03-22 12:23:25 -07:00 |
|
Dave Schmenk
|
81574a8a62
|
JIT tuning parameters
|
2018-03-21 22:31:06 -07:00 |
|
David Schmenk
|
cb7f86a911
|
Order DFD by address
|
2018-03-21 16:23:32 -07:00 |
|
David Schmenk
|
e16f45f59b
|
First pass at JIT
|
2018-03-21 13:00:23 -07:00 |
|
David Schmenk
|
3afd11fd03
|
New code translations
|
2018-03-20 21:01:59 -07:00 |
|
David Schmenk
|
3fc34fe028
|
Parsing bytecode to compile
|
2018-03-20 16:54:44 -07:00 |
|
David Schmenk
|
9701c00d1e
|
Merge branch 'devel' of https://github.com/dschmenk/PLASMA into devel
|
2018-03-20 14:19:42 -07:00 |
|
David Schmenk
|
4dcc033ed0
|
Invokable JIT compiler version
|
2018-03-20 14:19:17 -07:00 |
|
David Schmenk
|
d392cbca9c
|
Slight improvement to return address calc for ICAL/CALL
|
2018-03-19 15:21:15 -07:00 |
|
David Schmenk
|
571e8d8eb0
|
All out speed CFFB
|
2018-03-18 14:31:36 -07:00 |
|
David Schmenk
|
1a8f3048b5
|
Verify REL module tyoe before loading
|
2018-03-18 13:47:14 -07:00 |
|
David Schmenk
|
5a0d9e5751
|
VerifyREL module filetype before trying to load
|
2018-03-18 13:38:13 -07:00 |
|
David Schmenk
|
309f5d45b0
|
Shuffle routines around based on available INTERP mem
|
2018-03-18 13:23:39 -07:00 |
|
David Schmenk
|
caebedc1e5
|
Working Apple 3 again
|
2018-03-17 19:07:36 -07:00 |
|
David Schmenk
|
f7cf0be03e
|
more cmdsys rearrangement
|
2018-03-17 16:51:00 -07:00 |
|
David Schmenk
|
a9237f58cc
|
Sync cmd exported sysroutines
|
2018-03-17 15:52:15 -07:00 |
|
David Schmenk
|
3356cdd036
|
Break out cmd into module
|
2018-03-17 15:06:31 -07:00 |
|
David Schmenk
|
95e15e4b86
|
Better CASE END
|
2018-03-17 09:46:13 -07:00 |
|
David Schmenk
|
d379cefe2a
|
6502 caseblock early exit test
|
2018-03-17 08:44:02 -07:00 |
|
David Schmenk
|
463db3c170
|
Fix 65802 caseblock early exit
|
2018-03-16 20:44:09 -07:00 |
|
David Schmenk
|
68479c1606
|
Fix Y adjust on cse early exit
|
2018-03-16 19:08:13 -07:00 |
|
David Schmenk
|
423ca66fc0
|
No need for SANDBOX anymore. Tests for codeblock on 65802
|
2018-03-16 16:36:39 -07:00 |
|
David Schmenk
|
010750efed
|
Early exit caseblock if value less than ordered list
|
2018-03-16 15:14:58 -07:00 |
|
David Schmenk
|
c07bc8172c
|
Shrink a few bytes to fit
|
2018-03-15 07:59:16 -07:00 |
|
David Schmenk
|
3d84a2192c
|
BREQ and BRNE ops
|
2018-03-14 21:34:55 -07:00 |
|
David Schmenk
|
53c832da58
|
Fix ADDx ops
|
2018-03-14 18:43:21 -07:00 |
|
David Schmenk
|
b145f82a9d
|
Faster ADDx ops
|
2018-03-14 17:22:12 -07:00 |
|
David Schmenk
|
518b4e2680
|
local and absolute address ADDs
|
2018-03-14 11:56:16 -07:00 |
|
David Schmenk
|
c3f9ee0911
|
Save a few more bytes in the VM
|
2018-03-13 16:02:08 -07:00 |
|
David Schmenk
|
46b0c2c041
|
Version 1.1
|
2018-03-13 11:22:10 -07:00 |
|
Dave Schmenk
|
af44d7ee9a
|
Fix sign of divmod
|
2018-03-13 09:22:17 -07:00 |
|
Dave Schmenk
|
5d531f53b1
|
Fix sign of mod and divmod
|
2018-03-13 09:19:18 -07:00 |
|
David Schmenk
|
35539e8f6e
|
Update test case, portable VM WIP
|
2018-03-13 08:16:01 -07:00 |
|
David Schmenk
|
8730e2ff9a
|
Update test cases and portable VM
|
2018-03-13 07:48:34 -07:00 |
|
David Schmenk
|
6bbc5b6381
|
Fix mod sign
|
2018-03-12 20:47:07 -07:00 |
|
David Schmenk
|
4f11cad955
|
Update XBYTE in SELect
|
2018-03-10 15:45:01 -08:00 |
|
David Schmenk
|
023030831c
|
Sync all VMs and update images
|
2018-03-10 08:30:39 -08:00 |
|
David Schmenk
|
ce29a7c361
|
65802 bug fixes
|
2018-03-09 19:50:31 -08:00 |
|
Dave Schmenk
|
3d9c54adbf
|
65802 VM updates
|
2018-03-06 22:24:42 -08:00 |
|
David Schmenk
|
25599c00c8
|
Apple 3 VM updates
|
2018-03-06 19:20:59 -08:00 |
|
David Schmenk
|
a8553cfdb7
|
re-arrange some ops
|
2018-03-05 15:40:43 -08:00 |
|
David Schmenk
|
f3ef1b4820
|
Enable 65C02 ConstantNybble
|
2018-03-05 12:19:47 -08:00 |
|
David Schmenk
|
334bf1ec4d
|
Nybble constants encoded in opcode
|
2018-03-05 11:38:16 -08:00 |
|
David Schmenk
|
eff01c5f12
|
Short circuit AND/OR
|
2018-03-05 10:55:19 -08:00 |
|
David Schmenk
|
6de120ec89
|
New WHEN/IS for hosted compiler
|
2018-03-05 08:58:21 -08:00 |
|
David Schmenk
|
3ee19e86f6
|
SWITCH/CASE table optimization
|
2018-03-04 21:36:23 -08:00 |
|
David Schmenk
|
5b41fd07c4
|
More work on for/next
|
2018-03-04 13:15:02 -08:00 |
|
Dave Schmenk
|
2b2e464c9b
|
More immidiate ops, add/sub next branches
|
2018-03-04 10:18:31 -08:00 |
|
Dave Schmenk
|
793b1760a0
|
Constant op codes
|
2018-03-03 18:55:39 -08:00 |
|
Dave Schmenk
|
28f6e11606
|
Don't over-copy 65C02 routines
|
2018-03-02 21:54:03 -08:00 |
|
Dave Schmenk
|
40c3dcd197
|
Better FOR/NEXT ops
|
2018-03-02 21:43:09 -08:00 |
|
David Schmenk
|
86408f5157
|
First Commodore 64 version!
|
2018-02-24 18:11:06 -08:00 |
|
Dave Schmenk
|
ac78dad38f
|
Seed Commodore 64 code
|
2018-02-21 07:25:22 -08:00 |
|
Dave Schmenk
|
3fbf2e4fbd
|
Support multiple architecture ports
|
2018-02-20 17:27:44 -08:00 |
|
David Schmenk
|
efe08f8ea7
|
Save a couple bytes and sync label names
|
2018-02-17 10:34:09 -08:00 |
|
David Schmenk
|
02760f1038
|
Thanks SteveF!
|
2018-02-10 19:33:48 -08:00 |
|
David Schmenk
|
474f0a9017
|
PLASM type override bug :-(
|
2018-02-09 20:17:13 -08:00 |
|
David Schmenk
|
ebff3ebc07
|
Allocate all interp bank. Check path during set_pfx
|
2018-02-09 14:16:06 -08:00 |
|
David Schmenk
|
7af5d53fbb
|
Allow Apple3 heap allocator to skip graphics memory
|
2018-02-08 18:46:50 -08:00 |
|
David Schmenk
|
9b7ecaf8e6
|
Synch Apple 1 CMD to A2 and A3
|
2018-02-06 09:49:48 -08:00 |
|
David Schmenk
|
be5dfdba4b
|
Could this be it?
|
2018-02-05 14:54:06 -08:00 |
|
David Schmenk
|
5c322acf06
|
Fix gets()
|
2018-02-04 20:53:04 -08:00 |
|
David Schmenk
|
384c6e8a18
|
Lots of Apple /// progress
|
2018-02-03 20:20:21 -08:00 |
|
David Schmenk
|
222e34e229
|
Give 64K machines better ENTER/LEAVE
|
2018-02-01 18:49:20 -08:00 |
|
David Schmenk
|
10274bdf27
|
Synchronize CMDs
|
2018-02-01 18:10:02 -08:00 |
|
David Schmenk
|
f039572dde
|
Synchronize VMs
|
2018-02-01 12:56:06 -08:00 |
|
David Schmenk
|
b177c3f69d
|
Synchronize VMs
|
2018-02-01 12:52:00 -08:00 |
|
David Schmenk
|
11dea3d389
|
Capture Peter's 65C02 optimizations into standard VM
|
2018-01-31 14:36:50 -08:00 |
|
Peter Ferrie
|
3c36438333
|
a bit smaller, another attempt at 65c02 VM
|
2018-01-30 16:27:18 -08:00 |
|
David Schmenk
|
c2ee0a04ab
|
Last of the VM opts. For now
|
2018-01-24 13:35:00 -08:00 |
|
David Schmenk
|
115c11d57b
|
Turns out you cannot set emulation mode from native mode with PLP
|
2018-01-24 11:52:05 -08:00 |
|
David Schmenk
|
ec5109a6db
|
DP#3 test
|
2018-01-23 20:54:06 -08:00 |
|
David Schmenk
|
1f999a86e8
|
Remove SELFMODIFY references for Apple II
|
2018-01-22 16:05:33 -08:00 |
|
David Schmenk
|
2175ce0d78
|
IP fixup cleanup
|
2018-01-22 13:56:04 -08:00 |
|
David Schmenk
|
2a6dbee706
|
Swap eval stack MSB and LSB for guard bytes bytes for stack based pointers
|
2018-01-21 21:23:49 -08:00 |
|
David Schmenk
|
e1faa30970
|
Developer Preview 2
|
2018-01-20 15:54:05 -08:00 |
|
David Schmenk
|
ad3a0c6a46
|
Peter Ferrie optimizations
|
2018-01-20 13:30:31 -08:00 |
|
David Schmenk
|
eb852c8a73
|
Last branch op code optimization
|
2018-01-20 10:37:21 -08:00 |
|
David Schmenk
|
3807a29fc9
|
The branch op code I was looking for
|
2018-01-20 10:30:14 -08:00 |
|
David Schmenk
|
934c52cf4d
|
Even faster module loads. Now I'm happy
|
2018-01-20 09:52:32 -08:00 |
|
David Schmenk
|
abfe13a673
|
Fix oops on FIXJMP_IP
|
2018-01-20 09:17:55 -08:00 |
|
David Schmenk
|
82516bfe31
|
Speed up modload, fix oops on FIXUP_IP
|
2018-01-20 09:15:26 -08:00 |
|
David Schmenk
|
f24bb421ec
|
fewer and better checks for IP FIXUP
|
2018-01-19 17:37:32 -08:00 |
|
David Schmenk
|
4b8fca060f
|
remove conflict with clock cards and command line arguments
|
2018-01-19 14:12:22 -08:00 |
|
Dave Schmenk
|
e06a217f33
|
Switch all VMs to lazy IP update
|
2018-01-18 20:27:53 -08:00 |
|
David Schmenk
|
a3b12f9c28
|
John Brooks instruction fetch optimizations
|
2018-01-18 16:56:21 -08:00 |
|
David Schmenk
|
d166b99eb0
|
Fix 65802 HWSP state
|
2018-01-18 07:20:02 -08:00 |
|
David Schmenk
|
5ac6a556c8
|
Only adjust frame pointer for ENTER/LEAVE
|
2018-01-17 21:13:16 -08:00 |
|
David Schmenk
|
16f5cd6f1b
|
Update magic # in module load
|
2018-01-17 10:28:41 -08:00 |
|
David Schmenk
|
5f9ba155eb
|
Just easier to add a divmod opcode
|
2018-01-15 14:13:50 -08:00 |
|
David Schmenk
|
a92301908a
|
Better fix for 65802 DIV and MOD bug
|
2018-01-15 07:36:02 -08:00 |
|
Dave Schmenk
|
b176847778
|
Reduce stack usage for ENTER/LEAVE but incompatible bytecode
|
2018-01-14 21:41:47 -08:00 |
|
Dave Schmenk
|
3651cb6373
|
divmod returning values in right order
|
2018-01-14 20:05:39 -08:00 |
|
David Schmenk
|
c3feb152ba
|
Fix DI&MOD stomping on 65802 ESTK pointer
|
2018-01-14 18:47:52 -08:00 |
|
David Schmenk
|
eea119f924
|
Set identifiers/keyword to upper case
|
2018-01-14 13:44:08 -08:00 |
|
David Schmenk
|
06a04701c3
|
Found broken recursive calls on 65802
|
2018-01-14 12:41:19 -08:00 |
|
David Schmenk
|
26005a0637
|
Save a byte
|
2018-01-13 12:09:52 -08:00 |
|
David Schmenk
|
87f9be31d8
|
Sometimes a small change has large repercussions
|
2018-01-13 11:53:21 -08:00 |
|
Dave Schmenk
|
80a7805be1
|
Clean up
|
2018-01-10 22:02:55 -08:00 |
|
Dave Schmenk
|
55c23805b4
|
Fix TOUPPER in COUT for Apple][
|
2018-01-10 21:02:43 -08:00 |
|
David Schmenk
|
f2d7593527
|
Apple ][/][+ and PLASMA16 acting wierd
|
2018-01-10 19:10:15 -08:00 |
|
David Schmenk
|
d1893b69da
|
Set SYSPATH for CMD
|
2018-01-10 13:29:45 -08:00 |
|
David Schmenk
|
9b42eae31b
|
Set verion to Pre 1.0 for developer release
|
2018-01-10 12:53:47 -08:00 |
|
David Schmenk
|
d7618a3708
|
get SYSPATH from CMD path
|
2018-01-10 12:29:52 -08:00 |
|
David Schmenk
|
e778e018aa
|
Export SYSPATH
|
2018-01-10 11:48:11 -08:00 |
|
David Schmenk
|
a58f3639a5
|
Print banner *after* setting heap address
|
2018-01-10 10:29:27 -08:00 |
|
David Schmenk
|
6213bbf3ef
|
Allow SOS PLASMA to set system path
|
2018-01-10 10:03:23 -08:00 |
|
David Schmenk
|
cf32a42364
|
PLASMA 1.0 code complete (but not fully tested)
|
2018-01-10 09:27:54 -08:00 |
|
David Schmenk
|
72fbb94dd1
|
Speed up module loading (remove unused features, too)
|
2018-01-09 18:12:30 -08:00 |
|
David Schmenk
|
e48d3cc112
|
Load EDASM generated REL files and link them in
|
2018-01-09 15:54:45 -08:00 |
|
David Schmenk
|
dbc02bc1b6
|
Still lingering TEST problem
|
2018-01-08 21:41:28 -08:00 |
|
David Schmenk
|
71f5f061ee
|
Clean up modload code
|
2018-01-08 13:34:17 -08:00 |
|
David Schmenk
|
0af73ad1ca
|
disable optimizer on 64K machines
|
2018-01-08 13:16:37 -08:00 |
|
David Schmenk
|
85e76a74bb
|
Free as much memory when calling module init as possible
|
2018-01-08 11:53:15 -08:00 |
|
David Schmenk
|
c075197c6d
|
PLASM code optimizations match plasm
|
2018-01-08 11:00:56 -08:00 |
|
David Schmenk
|
2fea8165b2
|
Writing out Ext REL file
|
2018-01-03 14:49:30 -08:00 |
|
David Schmenk
|
8a58ef8b5f
|
Free up unneeded opcodes. Makes thing a little more simple
|
2018-01-01 10:29:28 -08:00 |
|
David Schmenk
|
7843bc41ce
|
More robust stack depth checking and var parsing
|
2017-12-24 20:35:39 -08:00 |
|
David Schmenk
|
f79b94ba96
|
Enable strict parameter/return count checking
|
2017-12-13 14:40:31 -08:00 |
|
David Schmenk
|
42a58938b9
|
Get Apple /// playing with SANE and FileIO
|
2017-12-06 12:58:41 -08:00 |
|
David Schmenk
|
f5ea22af02
|
FileIO library for Apple 1 and ///, divmod function in cmdsys
|
2017-12-05 19:22:35 -08:00 |
|
David Schmenk
|
40ae932940
|
Add CPU check to PLASMA16
|
2017-12-04 10:44:37 -08:00 |
|
Dave Schmenk
|
f1bdedf938
|
Fix MUL opcode
|
2017-12-03 20:17:42 -08:00 |
|
David Schmenk
|
415e284066
|
Fix stupid filesystem modes
|
2017-12-03 16:11:28 -08:00 |
|
David Schmenk
|
3f8a396808
|
CMP doesn't set V flag :-(
|
2017-12-03 14:43:40 -08:00 |
|
David Schmenk
|
02129d49b9
|
Weird accum size switching bug
|
2017-12-02 22:47:07 -08:00 |
|