6502.org Forum  Projects  Code  Documents  Tools  Forum
It is currently Sun May 05, 2024 9:34 am

All times are UTC


Search found 123 matches
Search these results:

Author Message

 Forum: Programming   Topic: CA65: how to get a simple one file binary for a EEPROM/Flash

Posted: Sat Aug 27, 2022 10:44 pm 

Replies: 23
Views: 1666


If you're still interested in using ca65 for your ROM code, you have to use fill bytes to align the addresses, .org will only update the address where the current assembly is generated. Here is how I did it for the ROM code for Apple2Pi: https://github.com/dschmenk/apple2pi/tree/master/pidrive Look ...

 Forum: Programming   Topic: Languages other than Forth that use ITC or DTC interpreters

Posted: Mon Jul 18, 2022 1:25 am 

Replies: 11
Views: 1214


... Plasma? https://github.com/dschmenk/PLASMA/ David A. Wheeler had mentioned this on his website but I hadn't picked up on the fact that it implements a number of features I'm interested in. It sounds like maybe I should take a closer look. Thanks. My very first implementation would generate byte...

 Forum: Programming   Topic: Can the 65816's A register change in width?

Posted: Mon Jun 06, 2022 5:44 pm 

Replies: 10
Views: 962


I also think of A as having a variable width. For what I'm working on now, I figured out early on that it's easiest just to stay in 16-bit mode and only switch to 8-bit mode when needed and switched back immediately afterwards. That was my strategy for my (BCPL) bytecode interpreter, but that 16-bi...

 Forum: Programming   Topic: SDCC for 6502

 Post subject: Re: SDCC for 6502
Posted: Sat Mar 12, 2022 5:35 pm 

Replies: 45
Views: 19403


Great news. I also used SDCC for an embedded 8051 project many years ago and found it very capable. It looks to also have support for the 65C02.

 Forum: Programming   Topic: LUCIDATA Pascal for 6502

Posted: Thu Oct 14, 2021 2:38 am 

Replies: 46
Views: 4504


Randy Hyde wrote a great book about the Apple Pascal p-code interpreter: https://archive.org/details/Hyde_P-Sour ... ystem_1983

Very useful if the LUCIDATA is based off of UCSD, but still a great read regardless.

 Forum: General Discussions   Topic: The Apple II programming

Posted: Wed Jun 16, 2021 10:01 pm 

Replies: 16
Views: 1713


On an Apple II+, the mouse card firmware will clear the memory from $2000 to $4000 in order to synchronize the mouse interrupt with the vertical retrace. As the Apple II+ doesn't have a direct way to check for vertical retrace, it uses a technique known as "vapor lock" to figure it out. I...

 Forum: General Discussions   Topic: The Apple II programming

Posted: Wed Jun 16, 2021 4:10 am 

Replies: 16
Views: 1713


... This works for the Apple IIe/IIc/IIgs which are emulated by MAME/MESS. However this doesn't work for the Apple II+. It seems that a call to a mouse card function changes memory bank at $2000 on the Apple II+. ... On an Apple II+, the mouse card firmware will clear the memory from $2000 to $4000...

 Forum: General Discussions   Topic: Andrew Jacobs (BitWise) has passed away

Posted: Wed Jan 27, 2021 4:59 pm 

Replies: 27
Views: 5531


This is so disheartening to hear. His contributions were always of such high quality. He was one of the main reasons I enjoy this site so much.

 Forum: General Discussions   Topic: Robot Game: C vs Forth vs Assembly

Posted: Mon Jul 06, 2020 9:35 pm 

Replies: 32
Views: 5851


And like they say, "You can get 90% of the performance of assembly language with only 10% done in assembly, provided it's the right 10%, the critical 10%," or something like that. The actual numbers will depend on the application; but the principle holds. And it's so easy to mix some 65xx...

 Forum: Programming   Topic: PLASMA 2.0 Alpha

 Post subject: PLASMA 2.0 Alpha
Posted: Sun Jul 05, 2020 2:37 am 

Replies: 1
Views: 930


PLASMA has been languishing while everyone else was playing with their compilers. So I took advantage of the coronavacation to tidy some things up and push out an alpha release. Between the TFTP network file transfer server, file utilities, improved editor, and stable AOT compiler and JIT compiler, ...

 Forum: Programming   Topic: Cowgol 2.0 compiler for the 6502

Posted: Sat Jun 13, 2020 9:44 pm 

Replies: 53
Views: 3635


@resman: I don't actually want to pass parameters by writing into subroutine variables, though --- it's always going to be more expensive than passing them on the stack. I can push a byte onto the stack with a PHA, so that's one byte per byte. Storing to memory is going to be two or three bytes, de...

 Forum: Programming   Topic: Cowgol 2.0 compiler for the 6502

Posted: Thu Jun 11, 2020 2:12 am 

Replies: 53
Views: 3635


@resman: can you provide an example of some PLASMA stack frame code? (BTW, the Plasma VM should be a really easy Cowgol target.) These are the routines to allocate a frame & copy parameters and deallocate it: ;* ;* ENTER FUNCTION WITH FRAME SIZE AND PARAM COUNT ;* ENTER LDA IFPL ; ALLOCATE FRAM...

 Forum: Programming   Topic: Cowgol 2.0 compiler for the 6502

Posted: Tue Jun 09, 2020 9:51 pm 

Replies: 53
Views: 3635


@resman: Right. It took me ages to see that the first time round. Once you start accessing the subroutine's parameters outside the scope of the subroutine, you're effectively extending the lifetime of the parameters to when you start evaluating the first parameter, rather than just when the jsr to ...

 Forum: Programming   Topic: Cowgol 2.0 compiler for the 6502

Posted: Tue Jun 09, 2020 5:08 pm 

Replies: 53
Views: 3635


@resman: Cowgol 1.0 did that! I couldn't make it work. The problem is compiling code like this: function1(1, 2, function2(3, 4)); Because function1 and function2 can share the same address for their locals, then we marshal the 1 and 2 into function1's parameters and then immediately overwrite them ...

 Forum: Programming   Topic: Cowgol 2.0 compiler for the 6502

Posted: Tue Jun 09, 2020 3:44 pm 

Replies: 53
Views: 3635


I would make a set of simple rules to map a function's parameters, locals, and return values. For instance: function address + 0: JMP *+sizeof(parameters+return values+locals) function address + 3: parameters function address + 3 + sizeof(parameters): return values function address + 3 + sizeof(par...
Sort by:  
Page 4 of 9 [ Search found 123 matches ]


All times are UTC


Jump to: