Author Topic: What do PCE developers use?  (Read 305 times)

Monster Bonce

  • Full Member
  • ***
  • Posts: 110
What do PCE developers use?
« on: June 08, 2007, 01:31:13 AM »
Sorry to but into a forum that's none of my business but I'm fascinated by independent and homebrew console development. What are you guys using to develop for the PCE? Are you programming in assembler, for example?

nodtveidt

  • Guest
Re: What do PCE developers use?
« Reply #1 on: June 08, 2007, 01:45:26 AM »
Some use assembly, some use C. I'm pretty sure Chris Covell uses assembly for his stuff. MindRec and Frozen Utopia both use HuC. I'm not sure about others, but there's one person on efnet #utopiasoft who uses an assembler with all custom startup and library code.

MooZ

  • Newbie
  • *
  • Posts: 34
Re: What do PCE developers use?
« Reply #2 on: July 10, 2007, 10:05:36 PM »
I'm using pceas (cvs version) with custom headers. They are in fact a mostly rewritten hucard only version of mkit.
I tried wla-dx but it misses some of the pceas functionalities. And it can be very annoying. But on the other hand, i'ld be cool if pceas has the bank/slot/org/orga commands from wla-dx. It will make things clearer because at the moment you have to do the evil address computation by yourself... and erm... I think I'm going off-topic :)

malducci

  • Guest
Re: What do PCE developers use?
« Reply #3 on: July 11, 2007, 02:45:29 AM »

'ey MooZ :D

 Since you mentioned CVS build, do you know of a way to do:

LABEL=*+1
     lda $0000
     .
     .
     .
     sta LABEL
     sty LABEL+1


To do the equiv in PCEAS:

LABEL_:
LABEL=LABEL_+1
     lda $0000

or just use LABEL and do sta LABEL+1, sty LABEL+2








MooZ

  • Newbie
  • *
  • Posts: 34
Re: What do PCE developers use?
« Reply #4 on: July 11, 2007, 03:49:41 AM »
If i understand things right, you are looking for a way to get the current offset. I did something similar when i was playing with interrupts.

Code: [Select]
    ldy #high(HERE)
    lda #low(HERE)
    bne skip
    dey
skip:
    dec A
    phy
    pha

    jmp [vector]
HERE:

It emulates the behaviour of the jsr intruction. This code doesn't work if you put it in a different bank or in ram. mkit is using a cleaner solution.
Code: [Select]
dummy_interrupt_vector:
                     ; some code
    jsr user_code    ; push pc-1 into the stack an jump to user_code
                     ; the 'rts' in the code pointed by vector will bring us back here
    rti              ; end of the interrupt vector

user_code:
    jmp [vector]     ; let's jump to user defined code

The user defined vector must finish with a 'rts'. As we had a 'jsr' to user_code, the 'rts" will bring us back to the instruction coming after the 'jsr'.

Anyway, in pceas there no keywords to get the current address but you can use a label as a standard immediate value.