PDA

View Full Version : New Project - DCNincest64



GPF
July 30th, 2004, 16:46
This is a port of Nincest to the dreamcast. Currently only runs fire and stars demos very very slowly.

On windows I have it displaying the N64 logo for the start up of WaveRunner, but the rom is to big for the dreamcast.

The colors are way off right now, and I am using SDL to render the screen.

Troy

wraggster
July 30th, 2004, 16:51
is this a nintendo 64 emulator ?

wraggster
July 30th, 2004, 16:53
if so any more info :)

also any news on the dc GBA emu :)

GPF
July 30th, 2004, 16:56
yes its a port of the N64 emulator Nincest64.

The GBA emulator has been on hold, I needed a break from working on it. Will resume shortly hopefully.

Troy

wraggster
July 30th, 2004, 16:57
wow im stunned

any info on speed etc

great work

Christuserloeser
July 30th, 2004, 16:59
brilliant! wonderful! newsposted! ;D


Chris

wraggster
July 30th, 2004, 17:02
any more screenies :)

LyonHrt
July 30th, 2004, 17:08
Yeah great stuff mate, i'll have a look at what the n64 homebrew scene has to offer. ;)

Christuserloeser
July 30th, 2004, 17:09
About the GBA emu: Just release it with a finished GUI/menu theme as a common GB/GBC emu (with the GBA emulation defunct for users) but with full source code to anyone interested in contributing to get this thing playable :)

Chris

wraggster
July 30th, 2004, 17:19
Even as a proof or work project its pretty damn impressive work

Maximo2703
July 30th, 2004, 17:29
wow another thing the newbies keep asking for that we thought we would never see. the dc is always amazing me.it''d be great to see 64 titles on dc.

wraggster
July 30th, 2004, 17:30
You do realise that several of the Dreamcast scene holy grails have been stomped on this year. :)

GPF
July 30th, 2004, 17:38
About the GBA emu: Just release it with a finished GUI/menu theme as a common GB/GBC emu (with the GBA emulation defunct for users) but with full source code to anyone interested in contributing to get this thing playable :)

Chris
Yeah thats the plan, I just needed to get away from it for awhile and take a break.

Then I got bored at work, so I decided to try to port an N64 Emulator. First I tried Mupen64 and got pretty close, except for the memory footprint the lowest I got it down to was just over 16 megs. Then I tried to port Apollo but the way it uses Windows Virtual Memory Management I decided to use the old Dos DJPP source code for Nincest64.
That was alot of fun since I had never programmed with DJPP, so I had to rip out the DOS specific code and VESA graphics and upport them to use SDL- most of code comes from the software gfx plugin for Mupen. I am close to getting it to render with the PVR, but I doubt that will speed it up much. Its a pretty slow port on Windows :)

Troy

wraggster
July 30th, 2004, 17:38
About the GBA emu: Just release it with a finished GUI/menu theme as a common GB/GBC emu (with the GBA emulation defunct for users) but with full source code to anyone interested in contributing to get this thing playable :)

Chris

I actually agree with this, id still keep the GBA emulation in (hey if it can run any GBA Homebrew that would be cool anyway) but finish the menus etc off.

Its your decision of course but with a source release there may be someone else who can give a few tips out to speed things up.

Cap'n 1time
July 30th, 2004, 17:39
Damn GPF, is there anything else thought to be impossible you can acomplish for us? :)

Hola
July 30th, 2004, 17:44
No one ever said that it was impossable to get any of these things runing. What was said was its pointless and not worth getting these things working as no one will ever get them to fullspeed. I think the Gba emu and this N64 are living proof.

wraggster
July 30th, 2004, 18:07
well i should wait and see, the scene is progressing into the sh4 asm area more and more and with more coders getting the knowledge, lots more is possible.

guymelef
July 30th, 2004, 20:04
I think that homebrew and demo for 64 is only going to possible. some of those roms are way to big. and his source emu isn't that great (none of the 64emus are near perfect from a certain perspective)project64 is the closest but probably impossible to accuratly port to any other system. I am not dissin. just saving HOLA the trouble of slagging you. and to say that I am still looking forward to it. and giving you much props on your ability to cast your dream into reality.

Hola
July 30th, 2004, 20:10
I'd actually be more excited to see your updated SDL support conpiled to make a Windows version of Nicest64. Would be interesting.

On a side note I just found out my friend knows Sh2 asm extremly well and might work on a simple guide for learning it. He hates dc however so there wont be any dc spefic guides.

thunderwolf318
July 30th, 2004, 20:49
is it possible to make a program to split the rom into 2 pieces for the dc. the program could load an index file that would tell the dc which half to load when it needs the data

Kamjin
July 30th, 2004, 20:53
Again obatining the speed will probably make commercial games a no-go.. if someone were dedicated enough someone could always do a small circuit to add on to the expansion bus that allows carts to be plugged
in and mapped in the address space.. so chuncks
could be moved to faster ram..
But I think the main point is that it's actually cool to see
stuff like this..

Hola
July 30th, 2004, 21:05
Dynrec could make it fast enough to work. Its what makes SuperHLE run on a 400mhz pc fine.

Eric
July 30th, 2004, 21:31
I am asking if this is possible. Stefs core seemed to work on Neo Geo CD really well and the Genesis emulator. I am wondering if Stef updated it for the GBA,N64, and Scerzo's Super Nintendo Emulator would it make a speed difference.

Eric

krowstrife
July 30th, 2004, 21:31
ok this is hella cool
but the dreamcast dosen't have enough buttons
will it be compatable with a dc keyboard?

Hola
July 30th, 2004, 21:41
Ok one the core Stef made isnt for N64 as n64 doesnt use the same processor that Snes uses.
Secondly Stef core isnt fast enough because its still just C and it doesnt use enough tricks yet. It needs HLE or Dynrec. Nothing can get to fullspeed if its wrote in C unless it uses that.

Now heres how it could work for the controller.

N64 * * *DC

Anolog to anolog.
Dpad * to Dpad.
A * * * * to * X
B * * * * to * A
C4 * * * to * Y
Z * * * * to * B
Start to Start
No games absolutly require C 1 2 3.

krowstrife
July 30th, 2004, 23:22
Now heres how it could work for the controller.

N64 * * *DC

Anolog to anolog.
Dpad * to Dpad.
A * * * * to * X
B * * * * to * A
C4 * * * to * Y
Z * * * * to * B
Start * to * Start
No games absolutly require C 1 2 3.


what about turok it uses the C 1-4 to walk around
or zelda

Eric
July 31st, 2004, 00:24
Here is how i would use C cause it is used for zelda and i know right away thats what people would use it for.

No one needs the D-Pad cause people use the Joystick
So

the C-buttons can be used by the D-Pad
the Joy Stick well the Joy Stick
and all other buttons like the a and b could be used x,y,b and a
L and R same as the dreamcast L and R

wraggster
July 31st, 2004, 03:07
/me cant wait for more screenies :)

Hola
July 31st, 2004, 03:40
Here is how i would use C cause it is used for zelda and i know right away thats what people would use it for.

No one needs the D-Pad cause people use the Joystick
So

the C-buttons can be used by the D-Pad
the Joy Stick well the Joy Stick
and all other buttons like the a and b could be used x,y,b and a
L and R same as the dreamcast L and RI dont think you need to worry about Zelda as the only 2 games small enough to fit into the DC's ram that are good are Mario64 and starfox.

Eric
July 31st, 2004, 04:18
I wouldnt even say that yet buddy lets wait to see how far the emu gets before rambling your mouth off know it all its just what i had to say if possible

wraggster
July 31st, 2004, 05:25
Just so as you know, the Nintendo 64 has an impressive Homebrew scene with many fine games, demos etc. http://www.pdroms.de is a good place to start.

wraggster
July 31st, 2004, 06:43
Got a few questions

will you use HLE to get better speeds etc

also could a cable be made for connecting an hard drive to the Dreamcast for using as virtual memory storage space etc ?

Hawq
July 31st, 2004, 09:09
/me awaits a flood n00blets demanding a release NOW to play perfect dark on their DC's, though fortunatly the other un is likely to get them more than us. Next inpossible feat = getting a supermodel to fall for me, get on it! ;)

Kikai_Gabu
July 31st, 2004, 09:10
Sorry about butting in here, but this is a question I can field. Yeah, it could probably be done, with a lot of work. However, I don't believe the expansion bus is quite fast enough to make it practical for vmem, and it probably could only be done for IDE drives, not SCSI. Now, where as it would be nice to have 40+ gig of drive space on a dreamcast, it'd be great for linux, if not for vmem I don't really see what it would allow the DC to do that it can't do already with other hardware.

Kamjin
July 31st, 2004, 10:05
Sorry about butting in here, but this is a question I can field. Yeah, it could probably be done, with a lot of work. However, I don't believe the expansion bus is quite fast enough to make it practical for vmem, and it probably could only be done for IDE drives, not SCSI. Now, where as it would be nice to have 40+ gig of drive space on a dreamcast, it'd be great for linux, if not for vmem I don't really see what it would allow the DC to do that it can't do already with other hardware.

it's 25Mhz x16bit.. the protocol/framing isn't nowhere as as complex to deal with as PCI.. so a theoretical 40MB/sec practical 5-6MB when you need a driver to access a device....
which is more than enough for anything.. I don't see why you can't hook up a SCSI controller.. a 53c90 could easily be attached.. even memory could be mapped in there's several megs of address space there..
a couple of TTL's (or 1-2PLD's), and a disk on chip and you got 10-20mb of
space to play with.. question is who would be capable/willing to build it..

wraggster
July 31st, 2004, 11:45
yeah it would have to be made and tested etc but think of the great ness a dreamcast hard drive would bring to the scene. :)

Not forgetting it might help both a GBA and n64 emu for DC too.

Nincest64 isnt an emu im familiar with, what does it run etc and whats the homepage?

Hawq
July 31st, 2004, 12:07
I aint surprised your unfamiliar with it, it was discontinued in 99 at a stage where it only ran a few demo's

GPF
July 31st, 2004, 12:09
it was an emulator that was discontinued, so there is no longer a homepage for it. The emulator only run the fire demo and stars demo, haven't been able to get anything else to run on it, it either crashes or just shows a black screen.

I have hacked the emulator code and added some nulled out function calls and have gotten the N64 logo from WaveRunner displaying.

I cut the WaveRunner64 rom down to the first 2 megs and can get the N64 logo to display on the dreamcast. Its the wrong color but its displaying :)

Troy

wraggster
July 31st, 2004, 13:31
ahh there you go then :)

as a proof of works project, its pretty impressive

are there any source available N64 emulators that are portable other than this one, 1964 comes to mind?

wraggster
July 31st, 2004, 13:51
GPF also posted this :


Only the logo for Waverunner 64 will display on the pc, other than that the stars demo and fire demo are the only thing I have found that will run. I cut the Waverunner rom down to 2 megs and can get the N64 logo to display on the dreamcast.

Mario64 just shows a black screen on the pc, haven't tried to see if them emulator crashes if I load it on the dreamcast because of out of memory. My cdr burner just broke, so I have to load every thing up in a romdisk to test it and send it over my serial cable.

I am still researching the feasability of improving this emulator, vs looking at other n64 open source emulators, I have Mupen64 hacked down to the commandline and running a SDL gfx software plugin, but running the demo roms it is using around 16.5 megs on the PC, I have been talking to the Mupen author for suggestions on reducing the memory footprint, but I am still working on that also.

Troy

So there ya go ;)

krowstrife
July 31st, 2004, 14:44
imo the most combatible emu for pc is project 64 so have you ever considered it for a port

quzar
July 31st, 2004, 15:10
Dynrec could make it fast enough to work. Its what makes SuperHLE run on a 400mhz pc fine.

Dynarec != HLE. And the term coined for fast n64 emulation on the PC is UltraHLE (Ultra High Level Emulation). It directly replaced every hardware call with its equivilant directx call.

Sometimes this forum confuses me, because ill respond to the newspost in the front page, then it ends up being a different topic. The newspost 'comments' thing should always link to the original post if it exists.

Anyways, there I said I had been working on porting Mupen64, and had gotten everything compiling except for the Dynamic linking, which I really didnt understand at all (for the plugin system). I got sidetracked from replacing that with a builtin video system. I dont see why Mupen would give you a problem with memory GPF, unless you had linked in all the plugins and not just video and input.

GPF
July 31st, 2004, 15:57
Anyways, there I said I had been working on porting Mupen64, and had gotten everything compiling except for the Dynamic linking, which I really didnt understand at all (for the plugin system). I got sidetracked from replacing that with a builtin video system. I dont see why Mupen would give you a problem with memory GPF, unless you had linked in all the plugins and not just video and input.


I just changed the dynamic linking to a compile time linking, I had to rename all of the functions that normally are loaded from a DLL. The only plugin I am using is the SDL mupen software core from sourceforge. The dynarec and interpreter in the code use a lot of memory to store previous instructions thats why it is so much faster then the pure interpreter. With suggestions from Mupen's author I have hacked out most of the dynarec and interpreter code and removed the 4 meg ram that is used by the emulated expansion card, INI file loading and I also removed the tlb memory cache(~10 megs) and was able to get it down to around 16 megs but it just crashes the dreamcast.

Troy

faraway
July 31st, 2004, 16:13
GPF .. guess what I have here on a disk someplace? O.o. I think its probably more mature (I'm not sure how much of a difference there was between the last publicly released source and the dev stuff I have here...)

marius
coder/NINCEST 64: Get sis or get out.

sweet. I made slashdot indirectly thanks to you:-P.

Alexvrb
July 31st, 2004, 16:13
it's 25Mhz x16bit.. the protocol/framing isn't nowhere as as complex to deal with as PCI.. so a theoretical 40MB/sec practical 5-6MB when you need a driver to access a device....
which is more than enough for anything.. I don't see why you can't hook up a SCSI controller.. a 53c90 could easily be attached.. even memory could be mapped in there's several megs of address space there..
a couple of TTL's (or 1-2PLD's), and a disk on chip and you got 10-20mb of
space to play with.. question is who would be capable/willing to build it..
If you need memory (and don't care so much about permanent storage), why not use a small DIMM instead? If you could build an interface that would give you most of the theoretical bandwidth, that should work, latencies would be pretty low too. I recall BlackAura saying something about the N64 cart port not really being built for load-on-demand to the extent of something like a GBA, so it could get the job done. But it's still just an idea.

Plus there's all the other problems, like speed and compatibility. Not to mention warez. Having an N64 cart port on the side of your DC would fix that problem, but I don't exactly see that happening at this point. ;)

GPF
July 31st, 2004, 17:29
GPF .. guess what I have here on a disk someplace? *O.o. *I think its probably more mature (I'm not sure how much of a difference there was between the last publicly released source and the dev stuff I have here...)

marius
coder/NINCEST 64: Get sis or get out.

sweet. *I made slashdot indirectly thanks to you:-P.

Yeah thats awesome, I will be releasing the source changes I have made. I have the code now using SDL instead of VESA on the pc also. Just need to fix the colors.

Cool slashdot :)

Troy

Kamjin
July 31st, 2004, 17:34
If you need memory (and don't care so much about permanent storage), why not use a small DIMM instead? If you could build an interface that would give you most of the theoretical bandwidth, that should work, latencies would be pretty low too. I recall BlackAura saying something about the N64 cart port not really being built for load-on-demand to the extent of something like a GBA, so it could get the job done. But it's still just an idea.

A while back I had wired a 512Kx16 sram as a test bed (after seein the IDE project), to see how it would behave.. ran patterns through it for a whole night.. aside from occasional bit glitches (either from the wires, or noisy glue logic) It seemed to behave quite well..



Plus there's all the other problems, like speed and compatibility. Not to mention warez. Having an N64 cart port on the side of your DC would fix that problem, but I don't exactly see that happening at this point. ;)
Yeah, I also doubt this will have to be looked into anytime soon, I was orginally thinking along the lines of an interface for a 1541 disk drive, and an actual SID chip to allow for easier commodore emulation, and the ability to play some of the nasty protected games w/o having to setup the 64 all the time..

guymelef
July 31st, 2004, 19:10
I think that warez isn't an issue. *So far I think that emus on the DC are of a more elite class than emus for PC. the only warez concern for DC imo is DC backups. *I don't see people going out of their way to play snes, gb, spectrum, mame nes stuff on their DC when they have a PC or MAC handy. *Seriously this stuff takes a bit of brain power (not much but enough) just to burn right. especially when you talk about modding your DC to run a second-rate (no offense just trying to set the playing field) emulator for a system that no emu is near even 90% accurate. *that is not to say that has a dreamcast enthusiast that I am not looking forward to this project. *(a n64emu would be kickass no matter what the final product is). on the contrary I think that hardware mods is still a largely undiscovered country. I don't know how it will all work out but I am interested in trying. and maybe a by-product of it would be a cd-g drive for your PC that would play originals. of course the boards will be flooded with installing questions and complaints about irrerepairly damageing DC's. but hey that's the BIZ.

Kamjin
July 31st, 2004, 20:30
DC when they have a PC or MAC handy. *Seriously this stuff takes a bit of brain power (not much but enough) just to burn right. especially when you talk about modding your DC to run a second-rate (no offense just trying to set the playing field) emulator for a system that no emu is near even 90% accurate. *that is not to say that has a dreamcast enthusiast that I am not looking forward to this project.

While I'm sure I can't speak for others..
I'm trying to think how to answer this.. long ago In DD2 course , we were supposed to learn a cpu from start to scratch.. on the 2nd day I asked the teacher when we're going to start building the cpu. he answered.. why? you can buy one for a few $.. I built my own out of ttl and submitted it as the final project. It served no purpose what so ever.. it only had 12 or so inst. ran in the Khz.. took me the enitre semester to build.. it was fun.. and I did it. I took it apart and now the led display section, and some parts make a nice $30 digital watch that has no features :-/ The watch serves a purpose.. but I could have bought a better one for $2. I do to see what can be done..reality.. even this n64 emu will never see any realistic potential.. but why not try to see what you can actually do, and only when you've seen it's not possible then give up..do I make any sense??



*(a n64emu would be kickass no matter what the final product is). on the contrary I think that hardware mods is still a largely undiscovered country. I don't know how it will all work out but I am interested in trying. and maybe a by-product of it would be a cd-g drive for your PC that would play originals. of course the boards will be flooded with installing questions and complaints about irrerepairly damageing DC's. but hey that's the BIZ.
Hardware mods are fun.. (not led swapping). I mean I've actully though endlessly about building a PCI bridge of sorts off that bus, I even have papers in a pile with all the state tables, and block drawings.. but who could build it? and HD, and an ISA slot for a NIC would be a realistic idea those who don't have a bba could use a recomp'd version of ipload to take care of it, and the HD could seriously be used in homebrew, a desktop gui app and keep all your HB stuff on the HD.. so far the only properly doc'd mod of that sort uses an FPGA.. serious overkill, and how many people can actually build it..

WHurricane16
July 31st, 2004, 20:38
GPF continues to amaze ;)

Kamjin
July 31st, 2004, 21:21
GPF.. pops up when you least expect it.. stop whatever you're doing and leaves you in awe..
all this time.. forgot to mention well done!!!!!!!!

quzar
July 31st, 2004, 23:56
I think that warez isn't an issue. *So far I think that emus on the DC are of a more elite class than emus for PC. the only warez concern for DC imo is DC backups. *I don't see people going out of their way to play snes, gb, spectrum, mame nes stuff on their DC when they have a PC or MAC handy. *Seriously this stuff takes a bit of brain power (not much but enough) just to burn right. especially when you talk about modding your DC to run a second-rate (no offense just trying to set the playing field) emulator for a system that no emu is near even 90% accurate. *that is not to say that has a dreamcast enthusiast that I am not looking forward to this project. *(a n64emu would be kickass no matter what the final product is). on the contrary I think that hardware mods is still a largely undiscovered country. I don't know how it will all work out but I am interested in trying. and maybe a by-product of it would be a cd-g drive for your PC that would play originals. of course the boards will be flooded with installing questions and complaints about irrerepairly damageing DC's. but hey that's the BIZ.

usually warez on DC becomes an issue because of repackagers, those who will learn how to burn something then put a bunch of roms on a CD and sell them.

Eric
August 1st, 2004, 00:16
Games can also be warez if your using anything like original music,original graphics, or anything that video game companies have used in games that people are making homebrews. Am i right?

quzar
August 1st, 2004, 00:32
depends. iirc it is legally ok to use copyrighted stuff if what you are doing is for private use or is free.

Christuserloeser
August 1st, 2004, 01:26
This discussion seems to be pointless. In fact it is still illegal if you use ANY copyrighted stuff (like Beats of Rage does) but the companies aren't too concerned about fan developments if it's not for commercial use.

I'd say it's similar to do a Tetris styled game from scratch for non-commercial use (Tetris is copyrighted by Nintendo) or doing a Fan site containing artworks, cheats, patches & stuff or remix an old VG tune or dump an existing tune or create a Midi or just creating an emulator.

But any decent coder doesn't want to rip existing stuff (except for time issues) and aims to create a completly original game at one point (see Ages of the Beast = Beats of Rage 2). Something I'd probably never be able to do. :-[

Chris

guymelef
August 1st, 2004, 01:42
hey kamjin, fpga?
funny
pants
golf
association?
I know "if you have to ask, then you probably shouldn't know."
but I am interseted in serious dc hardware mods and not just a fancy case or some silly lights. (personally I think this whole light in your computer case is mildly gay)

guymelef
August 1st, 2004, 01:49
anyway if I wasn't clear on it i would like to say that I am waiting for this emu. and I wish the best for GPF. always have. just trying to do all the nay-saying in a constructive manner before the vultures get to him

MetaFox
August 1st, 2004, 02:04
I'd say it's similar to do a Tetris styled game from scratch for non-commercial use (Tetris is copyrighted by Nintendo)Tetris is not copyrighted by Nintendo, the copyright holder is Tetris Company, LLC. Creating a clone, even for commercial use is not illegal, as long as you don't use graphics or names from the original source. This would make our DC tetris games technically illegal - Those that use part or whole of the name in the game or a similar name (ie: Tetris, Tetris Clone, Clonetris, TetrisCD, Tetris 2, or -tris - Clonetris, and similar named games - Titris), and those that use graphics from the original source (ie: DCQuad). If I made a Tetris game with completely original graphics, and called it MetaFox's Generic Clone - it wouldn't be illegal. (Copyright laws are peculiar in that regard ;)).

MetaFox
August 1st, 2004, 02:13
or just creating an emulatorEmulation is not illegal as long as it was done purely by disassembly without the use of any official documentation, and it doesn't require the use of a BIOS dump from the machine in question.

Kamjin
August 1st, 2004, 08:30
hey kamjin, fpga?
funny
pants
golf
association?
I know "if you have to ask, then you probably shouldn't know."
but I am interseted in serious dc hardware mods and not just a fancy case or some silly lights. *(personally I think this whole light in your computer case is mildly gay)
Hehehe.. FPGA.. that's a good one..
Field Prgrammable Gate arrayis from a family of "logic" devices starting as far back as the PROM, EPROM, PLA, PAL, GAL, CPLD (more acronyms!)
They are basically an array of logic gates (AND, OR, and NOT) with the ability to connect them how you like, in essence you use them to replace a bunch of ttl chips 1 GAL (18pin Generic Logic array) can do the same as about 2-4 TTL chips, as well the method to program them is done though a language like this.. known as HDL

/** Inputs **/
Pin 1 = inv ;
Pin 2 = and1 ;
Pin 3 = and2 ;
Pin 4 = or1 ;
Pin 5 = or2 ;
Pin 6 = xor1 ;
Pin 7 = xor2 ;
Pin 8 = nand1 ;
Pin 9 = nand2 ;
Pin 10 = GND ;
Pin 20 = VCC ;

/** Outputs **/
Pin 19 = invout ;
Pin 18 = bufout ;
Pin 17 = andout ;
Pin 16 = nandout ;
Pin 15 = orout ;
Pin 14 = norout ;
Pin 13 = bnandout ;
Pin 12 = bandout ;

/** Logic Equations **/
invout = !inv ;
bufout = inv ;
andout = and1 & and2 ;
nandout = !andout ;
orout = or1 #or2 ;
norout = !orout ;
!bnandout = nand1 & nand2 ;
bandout = nand1 & nand2 ;

A FPGA can litterally contain a small CPU, Video chip.. you could litterally put an entire C=64/Apple2 inside on of those, and the language used to program them Verilog/VHDL is almost as though you were programing in C

Here's an example of a 6502's cpu Program counter

process (clk, reset)
variable pc_add : std_logic_vector(15 downto 0);
variable pc_inc : std_logic_vector(15 downto 0);
begin
if reset='1' then
pc <= "0000000000000000";
elsif clk'event and clk='1' then
pc_add := pc +
(data_in(7) & data_in(7) & data_in(7) & data_in(7) &
data_in(7) & data_in(7) & data_in(7) & data_in(7) &
data_in);
pc_inc := pc + '1';
if state=fetch then
pc <= pc_inc;
else
case pc_op is
when MC_NOP => -- Do nothing
when MC_INC => pc <= pc_inc;
when MC_BCC => if c_flag='0' then pc<=pc_add; end if;
when MC_BCS => if c_flag='1' then pc<=pc_add; end if;
when MC_BEQ => if z_flag='1' then pc<=pc_add; end if;
when MC_BNE => if z_flag='0' then pc<=pc_add; end if;
when MC_BMI => if n_flag='1' then pc<=pc_add; end if;
when MC_BPL => if n_flag='0' then pc<=pc_add; end if;
when MC_BVC => if v_flag='0' then pc<=pc_add; end if;
when MC_BVS => if v_flag='1' then pc<=pc_add; end if;
when MC_SPLIT => pc <= data_in & dint1;
when others => -- Do nothing
end case;
end if;
end if;
end process;

Hope this this explains more then it confuses..

Sonic-NKT
August 1st, 2004, 09:08
i think big roms are not a problem....
on the gp32 there is a GBA Eju project and they made something, dynamic Loading, with the emu running there are only 5 MB Left fore games but its possible to play those 16MB roms. . then the gba games seem like they were console games, they have loading times, but they are good playable in my opinion.
for information you can contact the author at sourceforge.. project: gpadvance
why shouldnt this works with N64 games..

curt_grymala
August 1st, 2004, 09:12
Tetris is not copyrighted by Nintendo, the copyright holder is Tetris Company, LLC. Creating a clone, even for commercial use is not illegal, as long as you don't use graphics or names from the original source. This would make our DC tetris games technically illegal - Those that use part or whole of the name in the game or a similar name (ie: Tetris, Tetris Clone, Clonetris, TetrisCD, Tetris 2, or -tris - Clonetris, and similar named games - Titris), and those that use graphics from the original source (ie: DCQuad). If I made a Tetris game with completely original graphics, and called it MetaFox's Generic Clone - it wouldn't be illegal. (Copyright laws are peculiar in that regard ;)).

If that's the case, then does that mean that commercial games like "Wordtris", etc. are licensed by Tetris, LLC?

guymelef
August 1st, 2004, 09:12
intersesting....... gp32 you say? the DC little sister. very odd indeed

MetaFox
August 1st, 2004, 10:10
If that's the case, then does that mean that commercial games like "Wordtris", etc. are licensed by Tetris, LLC?Yup. The whole reason The Tetris Company, LLC. was founded was to settle licensing disputes. The Tetris Company, LLC. is basically one big licensing company dedicated to Tetris and it's spinoffs.

wraggster
August 1st, 2004, 10:19
no wonder the GP32 scene was told to take down all tetris type games last year.

vipor231
August 1st, 2004, 11:22
any emulator is possible if done right....meaning if you can trick the dreamcast into thinkin it has more memory than it normally has... i hope i said that right..is that even possible??? maybe the gba and n64 big roms will be able to load..like somebody else said split the roms and load what it needs then go back and put the 2nd part in when needed and take the first part out... i mean load times should not even be an issue considering these games are under 75mb in size,so load times would be normal...

quzar
August 1st, 2004, 11:23
Emulation is not illegal as long as it was done purely by disassembly without the use of any official documentation, and it doesn't require the use of a BIOS dump from the machine in question.

I thought you could use official documentation as long as it was legally obtained.

Alexvrb
August 1st, 2004, 15:54
i think big roms are not a problem....
on the gp32 there is a GBA Eju project and they made something, dynamic Loading, with the emu running there are only 5 MB Left fore games but its possible to play those 16MB roms. . then the gba games seem like they were console games, they have loading times, but they are good playable in my opinion.
for information you can contact the author at sourceforge.. project: gpadvance
why shouldnt this works with N64 games..Turns out that a Dreamcast is not really much like a GP32 at all. So comparing them isn't really useful.


any emulator is possible if done right....meaning if you can trick the dreamcast into thinkin it has more memory than it normally has... i hope i said that right..is that even possible??? maybe the gba and n64 big roms will be able to load..like somebody else said split the roms and load what it needs then go back and put the 2nd part in when needed and take the first part out... i mean load times should not even be an issue considering these games are under 75mb in size,so load times would be normal...So you're going to sprinkle magic fairy dust on your DC, and bam, more memory. I gotcha.

thunderwolf318
August 1st, 2004, 18:13
vipor231 that was me. i was thinking that the roms could be split into mulitiple parts and the emulater could refer to an index. which says where the diferent data is and load it when it needs it. or you could extract all the textures and everything and put it in a folder and load it like that. when the game asked for a resource or something the emulater could catch it and load it from the cd.

Eric
August 1st, 2004, 18:20
i was wondering cause i am learning alot of stuff about N64's core is there one there is probably but i am not smart and what is it called and is there anything people can do with that just like people are doing for the Neo Geo and Genesis emu?

MetaFox
August 1st, 2004, 19:09
no wonder the GP32 scene was told to take down all tetris type games last year.Yes indeed, The Tetris Company, LLC. is quite adamant at protecting Alexi Pajitonov's interests.


I thought you could use official documentation as long as it was legally obtained.That would count as "insider information", and it's highly frowned upon as it's sidestepping on a company's intellectual property.


i was wondering cause i am learning alot of stuff about N64's core is there one there is probably but i am not smart and what is it called and is there anything people can do with that just like people are doing for the Neo Geo and Genesis emu?Any emulator needs a CPU core to function, so yes, there is one - several actually. The Nintendo 64 uses a customized MIPS R4000 processor, which is limited to the Nintendo 64 and it's arcade counterpart as far as I know. Since the M68000 CPU is used in alot of consoles, computers, and arcade machines, optimized CPU cores for slower machines of that particular CPU are more common.

Hola
August 1st, 2004, 19:20
It may be fraud upon but we sure know alot of emulators that use them. Bleemcast, VBA, alot of other PSX emulators.

MetaFox
August 1st, 2004, 19:26
It may be frowned upon but we sure know alot of emulators that use them. Bleemcast, VBA, alot of other PSX emulators.That's not true. There is alot of unofficial documentation that was discovered purely through disassembly. There's really no reason to risk contaminating the integrity and legality of your project by using official documentation when there is a wealth of legal information available (sometimes even more in-depth than their official counterparts). Most emulators aren't developed with information from official documentation. That was the main reason why Bleem! kept winning it's case in court - it used absolutely no insider information, and was derived completely from disassembly. It would be suicide for a commercial emulator to use information from any official source.

Hola
August 1st, 2004, 20:30
Well I know VBA did for a fact and alot of Gba emus did because they where coming out before GBA was even out. I mean VBA could pretty much play GBA perfectly about 2 weeks after the GBA was on the market. I know he's a good coder and all but dont you think he had a little help?

MetaFox
August 1st, 2004, 20:50
Well I know VBA did for a fact and alot of Gba emus did because they where coming out before GBA was even out. I mean VBA could pretty much play GBA perfectly about 2 weeks after the GBA was on the market. I know he's a good coder and all but dont you think he had a little help?You don't know that for a fact, you are just assuming based on the quick turnover of the emulators.

The system used a processor and architecture that was widely known. This is the reason why emulators were produced so quickly. Believe me, it's a lot easier to create an emulator that uses processors that are widely known, especially ones that you are familiar with. You just get the emulator displaying something with the basics, and work your way up from there.

This is also the reason why MAME was able to get a lot of arcade games emulated quickly early on - a lot of them used the same CPUs and similar architectures. Quick emulation turnover does not equate to using official documentation, it just shows that the system uses well known components.

guymelef
August 1st, 2004, 23:31
meta is right..
that is probably the reason why most cartridge sega console were easier than some of the nintendo stuff.
I once heard a rumor that you could concievably go to radio-shack and build a genesis while the snes used custom this and custom that. technologies that were propietary in some regard.


i read in a game magazine (i think gamepro) that the 3d0 processor was being used for missle guidance for the military. this was like 5 years ago though. 3do sold it to them to try and make some money or something.

Eric
August 2nd, 2004, 07:43
Okay thanks to the answer of my question Metafox and does this mean that someone can work on the N64 core to get that emu working or will the Dreamcast have a problem with that?

Eric

GPF
August 2nd, 2004, 08:44
here are some new screenshots, now I am using the PVR to render the screen instead of SDL.

http://s101533388.onlinehome.us/GPF/dcnin64stars.jpg

http://s101533388.onlinehome.us/GPF/dcnin64fire.jpg
http://s101533388.onlinehome.us/GPF/dcnin64wave.jpg

and here is the link to the sourcecode and compiled 1st_read.bin and a windows executable and the N64 stars demo.

http://s101533388.onlinehome.us/GPF/dcnin64.zip

Troy

Hola
August 2nd, 2004, 08:54
I'm guessing the using pvr didnt improve the speed to much when used on N64 as it would on a slower system. Might you wanna check into another emu's source code to see why the colors arent displaying correctly. Also nincest doesnt really have many functions so you're still gonna need to look at some tech docs or other emu sources.

wraggster
August 2nd, 2004, 12:40
Very nice first release :)

Maybe time for the GBA emu now ;)

Great stuff though

wraggster
August 2nd, 2004, 15:32
Did the newer source make any difference?

GPF
August 2nd, 2004, 15:54
Did the newer source make any difference?

I haven't seen faraway's newer source. I could upport the changes in.

So faraway, if you find the source thats later then the last beta source or the directx version source of Nincest. Send me a PM.

Thanks,
Troy

Hola
August 3rd, 2004, 09:55
Good work GPF cant wait till you can get that color right.
However I think the pvr needs to be used better as it should be able to give you a huge speed up as PVR is made for rendering 3d fast so it in theory should work faster on n64's 3d than a snes in which is has to draw a polygon and then lay a flat texture.

Alexvrb
August 3rd, 2004, 14:46
I imagine 3D acceleration would help quite a bit. But that might be a little hard to implement. There are open-source plugins that could give you something to look at. Maybe not port directly, but to give you a good idea of how they work. glN64 is an open source OGL plugin, you can find it here (http://gln64.emulation64.com/download.html).