Skip to content

Commit

Permalink
NES version
Browse files Browse the repository at this point in the history
  • Loading branch information
gameblabla committed Apr 1, 2023
1 parent c77f6b2 commit 68255e0
Show file tree
Hide file tree
Showing 89 changed files with 15,645 additions and 0 deletions.
6 changes: 6 additions & 0 deletions NES/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
*.png
*.mlb
*.nes
*.elf
old/
*.zip
Binary file added NES/DMCmusic.dmc
Binary file not shown.
Binary file added NES/DaDither.exe
Binary file not shown.
8 changes: 8 additions & 0 deletions NES/NES.gpl
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
GIMP Palette
Name: NES
Columns: 16
#
0 0 0 Untitled
85 85 85 Untitled
255 255 255 Untitled
170 170 170 Untitled
Binary file added NES/NESIFY/NESIFIER.exe
Binary file not shown.
12 changes: 12 additions & 0 deletions NES/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
# Copyright Infringement NES version
By gameblabla (April 1st 2023)

This is the NES version of my smallish game, Copyright Infringement The Regressive Right.
This has been ported to numerous platforms but now it's finally on the NES, my first proper NES homebrew game in fact!

It tries to make use of DPCM samples.
However due to technical issues, most of it is contained in only 16kb worth of voices !
I believe i managed to get a good compromise despite this...
Should llvm-mos get fixed accordingly, i will update this version.

This uses the MMC3 chip so make sure your NES flashcart or homebrew cart supports it !
Binary file added NES/bak.chr
Binary file not shown.
Binary file added NES/bak2.chr
Binary file not shown.
Binary file added NES/bakura.chr
Binary file not shown.
19 changes: 19 additions & 0 deletions NES/bakura.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
const unsigned char bakura[266]={
0x01,0xfe,0x01,0x0f,0x29,0x01,0x0f,0xfe,0x01,0x0f,0x29,0x01,0x0f,0xfe,0x01,0x09,
0x29,0x01,0xe2,0x2a,0x2b,0x2c,0x52,0x53,0x54,0x29,0x01,0x17,0x2d,0x2e,0x2f,0x30,
0x31,0x55,0x30,0x56,0x57,0x58,0x29,0x01,0x13,0x32,0x33,0x34,0x35,0x36,0x37,0x38,
0x59,0x5a,0x5b,0x5c,0x5d,0x5e,0x29,0x01,0x14,0x39,0x3a,0x3b,0x3c,0x3d,0x5f,0x60,
0x61,0x62,0x63,0x64,0x29,0x01,0x12,0x3e,0x3f,0x40,0x41,0x42,0x43,0x44,0x30,0x65,
0x66,0x67,0x68,0x69,0x6a,0x29,0x01,0x12,0x45,0x46,0x47,0x48,0x49,0x4a,0x6b,0x6c,
0x6d,0x6e,0x6f,0x70,0x29,0x01,0x12,0x4b,0x4c,0x4d,0x4e,0x4f,0x50,0x51,0x71,0x72,
0x73,0x74,0x75,0x76,0x77,0x29,0x01,0x12,0x78,0x79,0x7a,0x7b,0x7c,0x7d,0xb3,0xb4,
0xb5,0xb6,0xb7,0xb8,0x29,0x01,0x12,0x7e,0x7f,0x80,0x81,0x82,0x83,0x84,0xb9,0xba,
0xbb,0xbc,0xbd,0xbe,0xbf,0x29,0x01,0x11,0x85,0x86,0x87,0x88,0x89,0x8a,0x8b,0xc0,
0xc1,0xc2,0xc3,0xc4,0xc5,0x29,0xc6,0x29,0x01,0x10,0x2a,0x8c,0x8d,0x8e,0x8f,0x90,
0x91,0xc7,0xc8,0xc9,0xca,0x29,0xcb,0xcc,0x29,0x01,0x11,0x92,0x93,0x94,0x95,0x96,
0x97,0x98,0x98,0xcd,0xce,0xcf,0xd0,0xd1,0x29,0x01,0x11,0x99,0x9a,0x9b,0x9c,0x9d,
0x9e,0x9f,0xa0,0xd2,0xd3,0xd4,0xd5,0xd6,0xd7,0xd8,0x29,0x01,0x0f,0xa1,0xa2,0xa3,
0xa4,0xa5,0xa6,0xa7,0xa8,0xa9,0xd9,0xda,0xdb,0xdc,0xdd,0xde,0xdf,0x29,0x01,0x0f,
0xaa,0xab,0xac,0xad,0xae,0xaf,0xb0,0xb1,0xb2,0xe0,0xe0,0xe1,0x29,0xe2,0xe3,0xe4,
0xe5,0x29,0x01,0xc7,0x00,0x01,0x3e,0x00,0x01,0x00
};
Binary file added NES/bakura.nam
Binary file not shown.
1 change: 1 addition & 0 deletions NES/bakura16.pal
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
$0
1 change: 1 addition & 0 deletions NES/bakura4.pal
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
$0
9 changes: 9 additions & 0 deletions NES/chr-rom.s
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
.section .chr_rom,"a",@progbits
.incbin "font.chr"
.incbin "porntest.chr"
.incbin "porn2.chr"
.incbin "porn3.chr"
.incbin "porn4.chr"
.incbin "porn5.chr"
.incbin "porn6.chr"
.incbin "bakura.chr"
Binary file added NES/dmusic.dmc
Binary file not shown.
36 changes: 36 additions & 0 deletions NES/dmusic.s
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
;this file for FamiTone2 library generated by text2data tool

DMCmusic_music_data:
.byte 1
.word .Linstruments
.word .Lsamples-3

.Linstruments:
.byte $b0 ;instrument $00
.word .Lenv1,.Lenv0,.Lenv0
.byte $00
.byte $b0 ;instrument $01
.word .Lenv1,.Lenv0,.Lenv0
.byte $00
.byte $b0 ;instrument $02
.word .Lenv2,.Lenv0,.Lenv0
.byte $00

.Lsamples:
.byte $00+__dpcm_offset,$19,$02 ;52 (fuck2)
.byte $07+__dpcm_offset,$11,$02 ;53 (fuck1)
.byte $0c+__dpcm_offset,$96,$09 ;54 (yourloss)
.byte $32+__dpcm_offset,$a4,$09 ;55 (worth)
.byte $5b+__dpcm_offset,$64,$09 ;56 (rikuto)
.byte $74+__dpcm_offset,$9f,$09 ;57 (punish)
.byte $9c+__dpcm_offset,$ae,$09 ;58 (Ohmy_whatdowehav)
.byte $c8+__dpcm_offset,$5a,$09 ;59 (innocent)
.byte $df+__dpcm_offset,$7a,$09 ;60 (fun)

.Lenv0:
.byte $c0,$00,$00
.Lenv1:
.byte $c5,$ca,$c8,$c6,$c4,$00,$04
.Lenv2:
.byte $c3,$c6,$c5,$c3,$c2,$00,$04

12 changes: 12 additions & 0 deletions NES/empty.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
const unsigned char empty[155]={
0x01,0xff,0x01,0x10,0x29,0x01,0x0e,0xff,0x01,0x11,0x29,0x01,0x0d,0xff,0x01,0x13,
0x29,0x01,0x1e,0xff,0x29,0x01,0x1e,0xff,0x29,0x01,0x1d,0xff,0xff,0x29,0x01,0x1b,
0xff,0x01,0x02,0x29,0x01,0x1a,0xff,0x01,0x02,0x29,0x01,0x19,0xff,0x01,0x02,0x29,
0x01,0x1b,0xff,0x01,0x09,0x29,0x01,0x11,0xff,0x01,0x10,0x29,0x01,0x11,0xff,0x01,
0x0f,0x29,0x01,0x0e,0xff,0x01,0x0d,0x29,0xff,0xff,0x29,0x01,0x0e,0xff,0x01,0x11,
0x29,0x01,0x0c,0xff,0x01,0x13,0x29,0x01,0x0a,0xff,0x29,0x29,0xff,0x01,0x0d,0x29,
0x01,0x0e,0xff,0x01,0x14,0x29,0x01,0x0b,0xff,0x01,0x12,0x29,0x01,0x0c,0xff,0x01,
0x13,0x29,0x01,0x0a,0xff,0x01,0x14,0x29,0x01,0x09,0xff,0x01,0x19,0x29,0x01,0x05,
0xff,0x01,0x13,0x29,0x01,0x09,0xff,0x01,0x16,0x29,0x01,0x08,0xff,0xff,0x29,0xff,
0x01,0x15,0x29,0x01,0xc3,0x00,0x01,0x3e,0x00,0x01,0x00
};
Binary file added NES/font.bmp
Binary file not shown.
Binary file added NES/font.chr
Binary file not shown.
Binary file added NES/font.nam
Binary file not shown.
Binary file added NES/game.dmc
Binary file not shown.
3 changes: 3 additions & 0 deletions NES/link.ld
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
INCLUDE common.ld
INCLUDE c-in-ram.ld
INCLUDE prg-rom-banked-8.ld
87 changes: 87 additions & 0 deletions NES/main-old.c
Original file line number Diff line number Diff line change
@@ -0,0 +1,87 @@
/* example code for llvm-mos, for NES
* writing a full screen from RLE compressed .h file
* -can only be done with rendering off
* using neslib
* Doug Fraker 2018
*/

#include <nesdoug.h>
#include <neslib.h>
#include <bank.h>
#include "bakura.h"
#include "porn1_nametable.h"
#include "porn2_nametable.h"
#include "porn3_nametable.h"
#include "porn4_nametable.h"
#include "porn5_nametable.h"
#include "porn6_nametable.h"

asm (".globl __prg_ram_size\n__prg_ram_size=8\n");

const char bakura_palette[] = { 0x0f, 0x16, 0x24, 0x30, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f };
const unsigned char porn_pal[16] = { 0x0f, 0x16, 0x09, 0x30, 0x0f, 0x30, 0x0f, 0x30, 0x0f, 0x30, 0x0f, 0x30, 0x0f, 0x30, 0x0f, 0x30 };

static const char palette_sp[16] = {
0x0f, 0x30, 0x0f, 0x2f // black, black, yellow
};


//vram_unrle(bakura_name);
// bakura_nametable
unsigned char frames = 0;
unsigned char sprid;
unsigned char delayf = 0;
unsigned char pad1;

static const char text[] = "Sprites";
const unsigned char* rlename_table[] =
{
porn1_nametable, porn2_nametable, porn3_nametable,
porn4_nametable, porn5_nametable, porn6_nametable,
};

int main(void) {

ppu_off(); // screen off
pal_bg(porn_pal); // load the palette
pal_spr(palette_sp);

set_chr_bank_0(1);
vram_adr(NAMETABLE_A);
vram_unrle(porn1_nametable);
ppu_on_all();

oam_size(0);
bank_spr(1);

oam_clear();
oam_spr(16,192,'F'-55,0);
oam_spr(24,192,'U'-56,0);
oam_spr(32,192,'C'-55,0);
oam_spr(40,192,'K'-55,0);

while (1)
{
char pad1 = pad_trigger(0);

delayf++;

if (delayf > 1)
{
ppu_off();
//set_vram_buffer();
set_chr_bank_0(frames+1);
vram_adr(NAMETABLE_A);
vram_unrle(rlename_table[frames]);
//set_vram_update(NULL);
ppu_on_all();
frames++;
if (frames > 5) frames = 0;
delayf = 0;
}


ppu_wait_nmi();

}
}
Loading

0 comments on commit 68255e0

Please sign in to comment.