Search found 68 matches

by NOOPr
Wed May 13, 2020 12:30 pm
Forum: NESdev
Topic: Compiled stack proposal
Replies: 22
Views: 4826

Re: Compiled stack proposal

I made something like this once, it's called pa65.
I have not yet publicly exposed it because it lacks a good documentation.
If you want to try, here it is https://github.com/Parisoft/pa65
by NOOPr
Mon Jan 13, 2020 6:22 am
Forum: General Stuff
Topic: Source code of Famicom Ninja Game released
Replies: 8
Views: 5309

Re: Source code of Famicom Ninja Game released

Gilbert, thanks for share!
Pokun, thanks for the translation!

I think that VCS stands for Atari Video Computer System, the Atari 2600 one.
by NOOPr
Mon Jan 06, 2020 8:14 am
Forum: General Stuff
Topic: What code editor do you use?
Replies: 25
Views: 13114

Re: What code editor do you use?

I'm using VSCode with this extension for ca65.
What bothers me is that it don't have labels/symbols references, but it's ok.
by NOOPr
Fri Dec 27, 2019 10:23 am
Forum: Newbie Help Center
Topic: ASM6 -> CA65
Replies: 3
Views: 2826

Re: ASM6 -> CA65

Try this:

Code: Select all

AND #(someVal | someOtherVal)
by NOOPr
Tue Nov 26, 2019 7:28 am
Forum: Newbie Help Center
Topic: Nested loops and working with X and Y
Replies: 5
Views: 3554

Re: Nested loops and working with X and Y

bjones wrote:
Tue Nov 26, 2019 6:34 am
yeah I just implemented the top approach right after I posted. What makes the second one better?
You consume fewer ROM and CPU cycles by the cost of 1 byte in RAM.
by NOOPr
Tue Nov 26, 2019 6:31 am
Forum: Newbie Help Center
Topic: Nested loops and working with X and Y
Replies: 5
Views: 3554

Re: Nested loops and working with X and Y

To store the X/Y registers into stack, you must transfer it to A and then push to stack: ; Push X txa ; transfer value in X to A (A = X) pha ; to stack ; Pull X pla ; pull the value from stack into A tax ; transfer value from A back to X A better approach is to store the value in a variable in RAM (...
by NOOPr
Tue Nov 05, 2019 8:01 am
Forum: NESdev
Topic: FCEUX + Midframe Palette Swap
Replies: 22
Views: 6726

Re: FCEUX + Midframe Palette Swap

I highly recommend Mesen
by NOOPr
Mon Nov 04, 2019 6:47 am
Forum: NESdev
Topic: Sin table and fixed point arithmetic in C
Replies: 8
Views: 5222

Re: Sin table and fixed point arithmetic in C

@wonder , just do a rule of three:

Code: Select all

+------------+-------------+
| real value | fixed point |
+------------+-------------+
| 1.0        | 256         |
| 0.5        | 128         |
| 0.1        | 26          |
+------------+-------------+
by NOOPr
Sat Oct 26, 2019 2:28 pm
Forum: NESdev
Topic: What is the most popular assembler used for NES?
Replies: 10
Views: 8936

Re: What is the most popular assembler used for NES?

Don't know for sure, but i guess it is ca65 ... second asm6
by NOOPr
Fri Oct 18, 2019 11:27 am
Forum: Newbie Help Center
Topic: clear nametable then copy into ppu
Replies: 3
Views: 3705

Re: clear nametable then copy into ppu

A short version for clear only the name table: lda #CLEAR_VALUE ldx #0 ldy #>($3C0) clear_page: sta PPUDATA inx bne clear_page dey bne clear_page ldy #<($3C0) clear_frag: sta PPUDATA dey bne clear_frag or to clear NT within Attribute Table: lda #CLEAR_VALUE ldx #0 ldy #4 ; 4x256 clear_all: sta PPUDA...
by NOOPr
Wed Sep 25, 2019 10:14 am
Forum: Other Retro Dev
Topic: about paprium
Replies: 13
Views: 11615

Re: about paprium

tepples wrote:The 10 MiB map also messes up if a 32X or Sega CD is present, so I would recommend against using it in new productions.
There's no way to bank the 10MiB to avoid conflicts with these peripheral addresses?
by NOOPr
Wed Sep 04, 2019 5:49 am
Forum: Newbie Help Center
Topic: improvement random item generation code (BGR / PPU ADDR)
Replies: 9
Views: 5216

Re: improvement random item generation code (BGR / PPU ADDR)

The only problem is that all addresses of 8x8 BGR tiles are randomly drawn, while 16x16 blocks should be Sorry, I missed that. Just replace jsr rng ; generate another random byte cmp #240 by jsr rng ; generate another random byte asl a ; an even low byte cmp #240
by NOOPr
Tue Sep 03, 2019 12:15 pm
Forum: Newbie Help Center
Topic: improvement random item generation code (BGR / PPU ADDR)
Replies: 9
Views: 5216

Re: improvement random item generation code (BGR / PPU ADDR)

I think you don't need those tables: jsr rng ; rng is a proc that generates a random number from 0 to 255 in A and #3 ; A have a value from 0 to 3 clc adc #$20 ; now A have $20 to $23 sta PPUADDR ; set HI byte PPU address jsr rng ; generate another random byte cmp #240 bcc set_hi sbc #240 ; A have 0...
by NOOPr
Tue Sep 03, 2019 7:53 am
Forum: Newbie Help Center
Topic: Tested on FCUEX 2.2.2 but no sprites on flashcard (solved!)
Replies: 3
Views: 3331

Re: Tested fine on FCUEX 2.2.2 but no sprites on flashcard

The DMA routine must be called during V-Blank. So, try to call updatesprites in vblank . Tip: try to change your code to work with NMI enabled rather than manual calling vblank and polling $2002, something like this: main_loop: lda #0 sta nmiok wait_nmi: lda nmiok beq wait_nmi ; game logic here ; .....
by NOOPr
Tue Aug 20, 2019 3:12 pm
Forum: NESdev
Topic: 8bitworkshop - online IDE now supports NES
Replies: 19
Views: 15509

Re: 8bitworkshop - online IDE now supports NES

rainwarrior wrote:Doesn't seem to have any documentation?
You have to pay for it: https://www.amazon.com/gp/product/10759 ... e2c322d80a